我使用git来管理我的dotfiles,我同时使用linux和mac osx,因此我为这两个创建了单独的分支,并为常用设置创建了另一个master。
当我编辑一些常见的内容并且我想将更改保存到另一个分支时。这就是我现在的工作方式:
git checkout master
git commit ...
git checkout arch
git checkout master <file1>
git checkout master <file2>
这是很多工作。我可以签出提交而不是文件,或者是否还有更短的方式?
答案 0 :(得分:2)
我宁愿将master
合并到其他分支中,而不是挑选(see its disadvantage here)。
例如参见“Git branches for working on dev
while merging some changes into the master
”
这样,您就知道已经从master
集成到您的分支中的内容。
答案 1 :(得分:1)
你可以git cherry-pick <changeset hash>
。例如。 git cherry-pick 1a15f41e2
。这将把提交应用于当前分支。如果提交仅存在于远程仓库中,则必须在采摘樱桃之前执行git fetch。文档:http://www.kernel.org/pub/software/scm/git/docs/git-cherry-pick.html