Git分支操作方法

Git仓库介绍

Git仓库分为本地仓库和远程仓库,及时是从远程clone下来的仓库,它在本地也是独立的,它包含了你所clone分支的所有源代码和历史记录,可以方便的在本地进行操作。

Git天生就是分布式的,本地仓库中可以完成checkout、stage、commit、reset、log等操作,这是一个源码管理系统的最常用功能,即便是断网的情况下,也可以使用本地的仓库查看历史记录、提交源码、合并分支。

分支是Git的一大亮点,与VSS、SVN、TFS不同的是,Git可以快速的在本地创建分支,通常是在瞬间完成的。

 

查看分支

git branch

该命令可以查看本地分支,也可以使用参数 -a 查看所有分支。

 

上图中可以看到所有本地分支和远程分支,其中带 * 号的分支为当前的工作区使用的分支。

创建分支

git branch feature#a

上面的代码演示了创建名称为feature#a的分支

迁出分支

git checkout feature#a

以上两个命令实现了创建并使用分支feature#a的功能,它们还可以简化为一条指令:

git checkout -b feature#a

在checkout的时候添加命令 –b 即可创建并使用该分支。

删除分支

git branch –d feature#a

当我们完成一个分支的开发,并完成合并后,可以使用-d命令删除分支。此时,如果分支未完成合并,删除时会提示失败。

如果要强制删除分支,可以使用命令-D来实现。

提交分支

git commit feature#a

使用commit指令可以提交当前工作区被跟踪的更改。

合并分支

git merge feature#a

使用merge指令,可以实现分支的合并。

远程操作

以上命令都是基于本地进行操作的,并不会影响到远程的源代码。当我们完成代码后,需要将本地源码提交到远程库中,此时需要使用push指令,从远程拉去源代码需要使用pull指令。

git push –-set-upstream origin feature#a

上面的代码演示了本地新创建的分支推送到远程分支。如果已经建立了远程的关联,则只需要使用git push即可。

git pull origin dev

上面的代码演示了从远程拉取dev分支,要使用拉取的分支,只需要使用checkout指令即可。

 演练:

根据本地dev分支创建feature分支,推送到远程仓库,开发完成后合并到dev分支,并删除feature分支。

  1. 签出dev分支
    git checkout dev
  2. 创建feature分支,注意feature的命名格式,以feature开头,#分割,并使用新功能简要描述。
    git checkout -b feature#caching
  3. 提交feature分支,并推送到远程仓库
    git add .                                        #将修改的文件添加到暂存区
    git commit                                       #提交到本地仓库
    git push –-set-upstream origin feature#caching    #推送远程仓库
  4. 合并到dev分支
    git checkout dev                            #切换到dev分支
    git merge feature#caching                    #合并feature分支
    git push dev                                #合并完成后推送dev分支
  5. 删除feature分支
    git branch –d feature#caching                 #本地删除feature分支
    git push origin :heads/feature#caching        #从远程删除feature分支

建议先在本地使用命令行进行练习,熟练可以看各个指令对应的可视化工具,目前我们使用过的可视化工具有GitExtensions/VisualStudio/VSCode等,所有可视化工具都是对git的封装,最根本的还是要掌握命令行的操作。

 

参考文档:https://git-scm.com/book/zh/v2

 

2021年9月 北京、西安两地,高薪诚聘 .NET工程师,请私信联系!
如果认为此文对您有帮助,别忘了支持一下哦!
声明:本博客原创文字只代表本人工作中在某一时间内总结的观点或结论,与本人所在单位没有直接利益关系。转载时请在文章页面明显位置给出原文链接。
posted @ 2020-09-17 00:18  拓荒者-NET  阅读(441)  评论(0编辑  收藏  举报