我在HG中创建了一个工作存储库。 我修改了一些文件。
如何将我的所有修改移动到分支(我尚未创建的分支)? (有点'git stash'和移动存储会改变到分支。实际上,我不知道我怎么能在git中做到这一点。如果你知道,我很感激,如果你能用Git告诉我的话) / p>
谢谢。
答案 0 :(得分:4)
对于Git,如果您还没有提交文件,只需输入:
$ git checkout -b newbranch
$ git commit -m "a message"
此时暂存的每个文件都将在新分支中提交。
对于Mercurial,默认情况下,分支不是名称,如果提交的父级已经有子级提交,则只会出现一个新分支(在一个repo中):
但您可以为下次提交创建一个新的分支名称:
hg branch branch-1 # start a new branch name
# modify something in the repository
hg commit -m "branch-1" # the changeset has branch name "branch-1"
(另请参阅Guide to branching in Mercurial和Git & Mercurial models)
答案 1 :(得分:2)
首先检查以确保ShelveExtension和AtticExtension都不能完全符合您的要求。
如果您在mercurial中手动执行此操作,我会避免使用命名分支,并使用另一个头。例如,如果您已经进行了更改,则需要稍微“收起”。
hg commit -m 'working on Xxx' # you created a new tip
hg update -r -2 # switch to the revision before the tip
现在就开始在那里工作了。您可以稍后使用hg heads
找到该匿名分支,并将其与hg merge
合并。