git manual
一、代码提交
git add hello_world.c #将hello_world.c加入到暂存区
git add. #将hello_world.c加入到暂存区
git status
-
将暂存区的文件提交到本地的git仓库
git commit -m "add:添加一个新文件...."
-
将本地的git代码提交到git服务器
git push #提交到git服务器仓库
-
退回到某一次提交的版本
git reflog #获取提交的版本号 git reset --hard xxxxx
二、查看分支
三、创建和切换分支
四、从远程仓库pull(拉取)代码到本地分支
五、将新分支推送到远程仓库
git push origin 分支名称
六、删除分支
-
删除本地分支(不能删除当前所在的分支,如果要删除,必须切换到其他分支上)
git branch -d 分支名称
说明:如果删除时报错:error: The branch '分支名称' is not fully merged. (意思 是:分支未完全合并)。解决方法是使用 -D 强制删除,代码如下:
git branch -D 分支名称
七、合并分支
-
加入我们当前位于分支tempbranch上,刚开发完一个功能,执行如下命令提交到当前分支上:
git add . git commit -m "add:临时测试函数功能完成,提交到tempbranch分支" git push -u origin tempbranch
git checkout master
-
如果git merge的时候出现冲突,可以执行下面的命令取消merge:
git merge --abort:
-
然后查看状态
git status
-
最后push到远程仓库
git push origin master
八、概念说明
1.Git 处理分支的方式可谓是难以置信的轻量,创建新分支这一操作几乎能在瞬间完成,并且在不同分支之间的切换操作也是一样便捷。 与许多其它版本控制系统不同,Git 鼓励在工作流程中频繁地使用分支与合并,哪怕一天之内进行许多次。 理解和精通这一特性,你便会意识到 Git 是如此的强大而又独特,并且从此真正改变你的开发方式。
2.Git保存的不是文件的变化或者差异,而是一系列不同时刻的快照 。在进行提交操作时,Git 会保存一个提交对象(commit object)。 该提交对象会包含一个指向暂存内容快照的指针,还包含了作者的姓名和邮箱,提交时输入的信息以及指向它的父对象的指针。 首次提交产生的提交对象没有父对象,普通提交操作产生的提交对象有一个父对象, 而由多个分支合并产生的提交对象有多个父对象。
3.分支在实际开发中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。现在有了分支,就不用怕了。你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样既安全,又不影响别人工作。
派生的意思就是分支支流,gitblit上的派生,实际上就是git的分支,主支是master。
版权声明:本文为weixin_41003780原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。