新闻详情

新闻详情

首页 / 资讯中心 / 详情

Git入门笔记(二):连接GitHub、分支管理,以及踩过的坑

发布时间:2026/10/2 23:14:41来源:尧图网络
Git入门笔记(二):连接GitHub、分支管理,以及踩过的坑
上一篇跑通了本地Git的基本流程这篇接着学怎么把代码推到GitHub上以及分支是怎么回事。中间踩了几个坑都记下来了。一、注册GitHub账号GitHub 是一个代码托管网站相当于代码的云盘。你本地用 Git 管理好的代码可以推送到 GitHub 上存着别人也能看到。去 github.com 注册一个账号用邮箱注册就行。注册完之后你会看到一个章鱼猫Octocat的 logo那就是 GitHub 的标志。二、在GitHub上创建仓库登录之后点右上角的 号选 New repository进入创建页面。需要填的选项Repository name仓库名给你的仓库取个名字比如 practice-git。Public / PrivatePublic公开的所有人都能看到你的代码。学习用的话选这个就行。Private私有的只有你自己和你邀请的人能看到。公司项目一般选这个。Initialize this repository with下面有三个勾选项——README、.gitignore、License。学习阶段全部不勾保持空仓库就行。后面会单独讲 .gitignore 是什么。填好之后点 Create repository就建好了。建好之后页面会显示一段命令告诉你怎么把本地代码推上来。先别急往下看。三、把本地代码推到GitHub假设你上一篇已经建好了本地仓库里面有提交记录。现在要把它和 GitHub 上的仓库连起来然后推送上去。一共三步git remote add origin https://github.com/你的用户名/仓库名.git git branch -M main git push -u origin main逐行解释git remote add origin https://github.com/tangtangyi/practice-git.gitgit remote — 管理远程仓库。远程仓库就是不在你电脑上的仓库比如在 GitHub 上的那个。add — 添加一个。origin — 这是你给远程仓库起的别名。就像你给联系人存名字一样origin 就是 practice-git.git · github.com 这个长地址的简称。以后你不用每次都打完整地址说 origin 就行。后面的 URL — 就是你在 GitHub 上建的那个仓库的地址。git branch -M main把主分支的名字从 master 改成 main。GitHub 现在默认主分支叫 main以前叫 master。改一下名字保持一致。git push -u origin maingit push — 推送把本地的代码上传到远程仓库。-u — 第一次推送时加上这个意思是记住这个对应关系。以后你在这个分支上再 push直接打 git push 就行不用每次写 origin main。origin — 推到哪里就是刚才设置的那个远程仓库。main — 推哪个分支。正常成功的输出长这样Enumerating objects: 6, done. Counting objects: 100% (6/6), done. Writing objects: 100% (3/3), 280 bytes | 280.00 KiB/s, done. To https://github.com/********/practice-git.git * [new branch] main - main branch main set up to track origin/main.看到 new branch 和 set up to track 就说明成功了。去 GitHub 刷新页面就能看到你的文件了。四、踩坑记录坑1push 没有任何输出执行 git push 之后命令行直接返回了没有报错也没有成功提示。这种情况大概率是网络被拦截了。很多公司的网络有 DLP数据防泄漏系统检测到你在往外部 Git 仓库推代码会直接掐断连接。表现就是 push 命令静默失败——不报错但也没推上去。解决办法切手机热点再 push或者回家用自己的网络 push代码在本地不会丢什么时候推都行。坑2GitHub 页面打不开 / 加载很慢国内访问 GitHub 经常抽风页面加载不出来或者特别慢。这是正常的多刷新几次或者等网络好的时候再操作。五、分支branch分支是什么想象你在写一份文档main 分支突然老板说你试一下用另一种格式排版。你不会直接在原文档上改万一改坏了就全完了。你会复制一份出来在副本上折腾。这个副本就是新分支。在 Git 里主分支叫 main以前叫 master是你的正式文档你可以新建分支来试验新功能试验完了合并回 main试验失败了直接丢掉这个分支main 完全不受影响分支长什么样main: A --- B --- C --- Fbug修复合并回来 \ / dev: D --- E新功能还没做完字母代表每次提交。你在 B 的时候开了 dev 分支在 dev 上做了 D 和 E。同时 main 上继续做了 C然后发现 bug 修了 F。最后把 dev 合并回 main。常用分支命令命令作用通俗理解git branch查看所有分支看看桌上有几份文档git branch 名字新建分支不切换复制一份文档放在桌上但还在看原件git checkout -b 名字新建分支并切换过去复制打开副本一步到位git merge 名字把另一个分支合并到当前分支副本改好了把改动合回原件git branch -d 名字删除分支安全删除副本没用了丢掉没合并的不让删git branch -D 名字强制删除分支不管合没合并都删举个例子# 查看当前分支带 * 的是你所在的分支 git branch * main # 新建一个叫 dev 的分支并且切换过去 git checkout -b dev Switched to a new branch dev # 这时候你再 git branch会看到 # main # * dev # 星号在 dev 前面说明你现在在 dev 分支上 # 在 dev 上改代码、提交... echo 新功能代码 test.txt git add . git commit -m 在dev分支上新增功能 # 改完了切回 main git checkout main # 把 dev 的改动合并到 main git merge dev # dev 没用了删掉 git branch -d dev合并冲突conflict如果两个分支改了同一个文件的同一行Git 不知道该听谁的就会报冲突。比如 main 上你把 test.txt 改成了 版本Adev 上你把同一行改成了 版本B合并的时候 Git 就会说CONFLICT (content): Merge conflict in test.txt这时候打开 test.txt你会看到类似这样的内容 HEAD 版本A 版本B dev HEAD 到 之间是当前分支main的内容 到 dev 之间是 dev 分支的内容。你手动删掉不要的那部分保留想要的然后重新 add commit 就行了。实际工作中怎么避免冲突各改各的文件尽量别两个人同时改同一个文件合并之前先 pull 一下最新的代码冲突了别慌看清楚两边改了什么跟同事沟通一下再决定留哪个六、远程分支你 push 到 GitHub 的 main 分支在 Git 里叫 origin/main是远程分支。本地的 main 和远程的 origin/main 是两个东西main— 你电脑上的分支origin/main— GitHub 上的分支git push 就是把本地的 main 同步到远程的 origin/main。反过来git pull 是把远程的 origin/main 拉下来同步到本地的 main。比如同事往 GitHub 推了新代码你用 git pull 就能拿到最新的。七、Git知识地图还剩下什么要学到这里你已经覆盖了日常开发 80% 的 Git 场景了。剩下的按需学就行马上要学的基础必备.gitignore — 告诉 Git 哪些文件不用管比如编译产生的临时文件、密码配置文件git reset / git revert — 提交错了怎么撤回工作中遇到了再学git stash — 临时存一下手头没做完的改动切分支去干别的事git rebase — 让提交历史更干净比 merge 高级一点git cherry-pick — 只拿另一个分支的某一次提交不是全部合并git tag — 给重要版本打标签比如 v1.0、v2.0基本用不到的碰到了再查git submodule、git bisect、git hook八、常用命令总结第一篇 这篇命令作用git init新建仓库git add .把所有改动准备好要提交git commit -m 说明提交并写说明git log --oneline查看提交历史简洁版git checkout 编号 -- 文件名把文件恢复到某个历史版本git remote add origin 地址关联远程仓库git push -u origin main推送到远程仓库git pull从远程拉取最新代码git branch查看分支git checkout -b 名字新建并切换分支git merge 名字合并分支git branch -d 名字删除分支九、写在最后学 Git 不需要什么基础会打字就行。关键是动手练光看教程没用。第一篇跑通了本地流程这篇学会了推送到 GitHub 和分支管理。下一篇讲 .gitignore 和提交撤回把基础补齐。共勉。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

家具厂巡检怎么做?木粉尘、油漆房与除尘三处防爆重点 2026/10/2 23:08:34

家具厂巡检怎么做?木粉尘、油漆房与除尘三处防爆重点

家具厂看着是“木工车间”,实际是三套风险叠在一栋厂房里:木粉尘可燃、油漆与胶粘剂挥发易燃、除尘和热压设备持续发热。巡检如果只盯“机器转不转”,最要命的那条线往往被漏掉。 一、木工车间:粉尘沉积、除尘风道与火星 锯切、…

阅读更多 →
标书写到崩溃?实测4款AI标书工具:WPS AI、百度文库AI、ChatGPT、标捷智写,谁更懂投标人? 2026/10/2 23:08:03

标书写到崩溃?实测4款AI标书工具:WPS AI、百度文库AI、ChatGPT、标捷智写,谁更懂投标人?

做了十几年投标,我太清楚标书人的痛了。凌晨三点对着满屏的技术方案发呆,翻了几百页招标文件找不到评分点对应哪一章,好不容易写出来还被领导批“前后口径不一致”……这些场景,我几乎每个月都要经历一遍。尤其是碰上紧急项目&…

阅读更多 →
C/C++ static 关键字全解析:从存储期、链接属性到类成员与现代 C++ 新特性 2026/10/2 23:08:02

C/C++ static 关键字全解析:从存储期、链接属性到类成员与现代 C++ 新特性

如果有人让我用一个关键字同时考 C 语言和 C 的基础,我一定会选 static。它可能是这两个语言里最分裂的关键字:同一张脸,在不同的位置上干的活完全不一样,活脱脱一个"关键字界的变形金刚"。从 C 语言里的静态局部变量、…

阅读更多 →
会议纪要熬秃头?实测3个月,终于找到这款“能听懂人话”的AI总结神器 2026/10/2 23:08:01

会议纪要熬秃头?实测3个月,终于找到这款“能听懂人话”的AI总结神器

你有没有过这种经历?开了一上午的会,录音文件攒了七八个,回到工位硬着头皮从头听到尾,手打纪要打到手指发麻。好不容易整理完,领导问“客户提的三个核心诉求是什么”,你翻遍几十页笔记愣是没找到重点。更崩…

阅读更多 →
Spring Boot房屋租赁系统实战:从源码到部署全流程解析 2026/10/2 23:07:59

Spring Boot房屋租赁系统实战:从源码到部署全流程解析

自己跑过这类"Java Spring Boot房屋租赁系统"项目的朋友肯定清楚,市面上带源码的项目一大把,但真正到手能一次跑起来、还能应付答辩和面试的,其实没几个。这套房屋租赁系统(源码文档运行视频讲解视频)就是典…

阅读更多 →
Linux基础安全四道防线:账户、权限、服务与日志审计实战 2026/10/2 23:07:58

Linux基础安全四道防线:账户、权限、服务与日志审计实战

如果让我用一句话总结在智榜样平台上把《Linux操作系统基础安全》03模块完完整整学完的感受,那就是:Linux入门教你怎么样把命令敲对,Linux安全教你怎么样不把系统的门开错。这门课解决的不是"会不会用",而是"用的时…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉