**TASK 2: git分支管理+git工具**

Git 分支:每个人之间的开发不影响其他人的开发进程,Git 鼓励在工作流程中频繁地使用分支与合并

1 分支的创建

git branch -- 查看现有的分支或创建新的分支(当不带任何命令参数时)

输入git branch可以查看当前项目所拥有的全部分支

Git会使用*来标明当前所处的分支

新增加新的分支做法是,在git branch命令后面加上我们想要新建的分支的名称。

查看现有的所有分支

虽然创建了issue1的分支,但是当前分支还是在master上,我们可以通过git checkout命令来进行切换分支。

现在再查看下当前分支的状态,我们可以发现当前分支已经转换到了issue1分支上。

在分支上创建下新的文件

之后,可以通过git log --oneline检查下当前Git的记录

2 分支的合并

当我们在分支上完成开发工作后,我们需要将我们在当前分支进行的工作合并到主分支上。首先我们需要切回需要合并到的分支上,此处以issue1合并到master上为例子进行演示。

有时候分支的合并不会一番顺利,当我们在两个分支中对同一个文件的同一个部分进行了不同的修改,Git就没有办法顺利的合并他们,会在合并的时候产生合并冲突。比如我们在issue1分支和master分支下对issue1.md文件进行了修改,当我们将issue1分支融合到主分支上时就会发生冲突。

你可以通过以下几种方式解决这个问题:

  1. 提交你的更改:你可以选择将你的更改提交到当前分支,然后切换到目标分支。这样,你的更改就会保存在当前分支上,而不是丢失。
  2. 丢弃你的更改:如果你确定要丢弃你的更改,你可以使用 git checkout -- <file> 命令来丢弃你的更改。请注意,这将永久删除你的更改,所以只有在你确定要丢弃这些更改时才使用这种方法。
  3. 将你的更改存入stash:如果你想保留你的更改,但是又想切换到目标分支,你可以使用 git stash 命令将你的更改存入stash。然后你可以切换到目标分支,并在需要的时候使用 git stash pop 命令恢复你的更改。

 

这里我使用的是 git stash

3 将分支推送到远程

将分支推送到远程   首先,我可以使用git remote -v查看远程库的详细信息。会显示我们可以抓取或推送的origin地址。

当我们需要推送本地分支到远程时,需要指定具体的本地分支。

这里以issue1为例

4 分支的删除

Git中任何分支都是可以删除的(除了当前所在的分支不能删除)

master分支也是可以进行删除

 Git的分支删除可以分为删除本地分支和远程分支。

  • 删除本地分支
# branchName 是需要删除的本地分支名字
git branch -d branchName

当我们想强行删除分支时,只需要将参数d改为D即可。

  • 删除远程分支   
  • git push origin --delete branch (origin 是远程的主机名 branch 需要删除的远程分支 )