Git的分支操作

2023-02-20 16:37:41 浏览数 (1)

git的分支操作是在开发主线上分离出来,单独列出分支。可以理解为像是复制出一个文件夹,然后在这个文件夹下操作。

列出分支命令:git branch

代码语言:javascript复制
$ git branch  master* newtest

这是我的两个分支,master和newtest ,newtest前面的*表示的是当前使用的意思,表面当前所处的分支是newtest分支。

创建分支命令:git branch (branchname)

代码语言:javascript复制
$ git branch newtest1111$ git branch  master* newtest  newtest1111

使用命令branch新建了一个分支,再查看可以看到分支新建成功了。

这里注意,我是在newtest分支上进行的分支新建,新建出来的newtest1111分支的内容是和newtest一样的。

代码语言:javascript复制
创建 切换分支:git checkout -b <name>   这个命令可以创建切换命令合一 

切换分支命令:git checkout (branchname)

当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录。

进行分支切换的时候,如果有一些工程文件可能会由于格式等原因,打开的时候出现变动,git要求你重新commit或这stash。这里使用stash比较方便。

stash修改

代码语言:javascript复制
git stash       命令会把所有未提交的修改(包括暂存的和非暂存的)都保存起来,用于后续恢复当前工作目录。

比如下面的中间状态,通过git stash命令推送一个新的储藏,当前的工作目录就干净了。

代码语言:javascript复制
git stash save [stashMessage]

可以使用以上命令加入标记,类似于注释,stashMessage就是注释,方便后续查找的时候方便识别

恢复缓存stash

代码语言:javascript复制
git stash pop  命令恢复之前缓存的工作目录

这个命令是取出最近一次储藏的修改到工作区,如果要取出特定的使用如下命令

代码语言:javascript复制
git stash apply stash@{index}

index是数字,表示不同的缓存,可通过git stash list查询相应数字

查看现有stash

代码语言:javascript复制
git stash list

移除stash

代码语言:javascript复制
git stash drop  后面可以跟着stash名字
 
git stash list
stash@{0}: xxx
stash@{1}: xxx
stash@{2}: xxx
$ git stash drop stash@{0}

合并分支命令:git merge

你可以多次合并到统一分支, 也可以选择在合并之后直接删除被并入的分支。

将A合并到B,先切换到B,使用命令git merge A进行和并。如果A和B都包含某个相同的文件,会有冲突,先解决冲突再提交。

删除分支命令:git branch -d (branchname)

对于不再需要的分支可以使用删除命令进行删除

0 人点赞