天天看点

Git - 如何将master(或其他分支)上修改代码不提交直接移到新建分支

背景

       拿到简单需求后直接在master分支上做改动,修改完待提交时才发现不是在开发分支上,直接提交到master上又不可以。

       这时最理想的办法就是将改动暂存在本地,然后基于master分支新建一个开发分支如feature_001,然后将改动提交到分支feature_001上;测试通过后再合并到master。

实现

// 先将本地修改进行暂存
> git stash

// 暂存完毕后执行 git status 会显示不出本地的修改
// 再拉取当前分支
> git pull 

// 新建并切换到开发分支,如feature_001
> git checkout -b feature_001

// 将暂存的本地修改取出
> git stash apply

// 这时执行 git status 可以看到本地修改又显示出来了
// 正常提交即可
> git add .
> git commit -am "xxxxx"
> git push origin feature_001

           

       通过执行以上操作,所有修改就都已经转移并提交到新建的分支上了,master分支会保持原样。