我做了一个克隆到远程仓库并开始处理代码。我在代码添加,修改和删除方面做了很多事情,但还没有添加/提交/推送。现在我不想将这些更改推送到远程仓库,因为我必须完成所有相关任务。与此同时,我也需要尝试不同的方法。 那么我怎样才能保存"新分支"在不丢失我的工作的情况下,然后创建新的分支并开始处理这些分支中的任何一个。
最后我想到有这样的事情:
主人---> donesofar - > trynew
答案 0 :(得分:2)
您可以创建一个新分支,并在其上提交代码,然后创建另一个新分支来处理。
git checkout -b donesofar
git add . && git commit -m "msg"
git checkout -b trynew
现在,您将进入分支trynew
,它将包含您的所有更改。 donesofar
中的更改将被保留,因为您不再使用它们了。
答案 1 :(得分:0)
您还可以“隐藏”您的更改以供日后使用。来自http://git-scm.com/docs/git-stash:
Use git stash when you want to record the current state of the working directory and the index, but want to go back to a clean working directory. The command saves your local modifications away and reverts the working directory to match the HEAD commit.
只需留在您当地的分支机构并输入git stash save
,它就会隐藏您当前的更改并恢复到最近的HEAD提交。您可以稍后通过键入git stash apply
来恢复您的藏匿处。这将重新将您保存的所有更改重新添加到您当前正在处理的任何分支上,处于未提交状态。