使用git管理同一目录中的分支组合

时间:2017-07-19 19:50:29

标签: git branch

我正在以非标准的方式使用git,我在一个目录中混合了一些文件,每个文件来自不同的分支。我正在使用这些命令组合来修改文件:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-annotations</artifactId>
    <version>3.5.6-Final</version>
</dependency>

这个几乎做我想要的,从不同的系统我可以将任何给定文件的最新更改记录下来,而不会影响其他任何文件。但是,我缺少的是,没有对文件所做更改的编辑跟踪。看起来它每次都会将分支重新生成最新的提交,而不是链接该分支的提交。

谁能告诉我如何解决这个问题?我一直在浏览git文档,但所有内容都是根据与我在这里尝试的工作流程无关的工作流来描述的。

2 个答案:

答案 0 :(得分:1)

到目前为止,它似乎正在改变

git checkout -f remotes/$REPO/$BRANCH -- $FILE

git checkout -m remotes/$REPO/$BRANCH -- $FILE

让它以我想要的方式运作。你觉得这有什么问题吗?我看到了一些不一致的地方,但它们与我在这里没有描述的操作有关。

答案 1 :(得分:0)

如果用{/ p>替换git checkout -f remotes/$REPO/$BRANCH -- $FILE怎么办?

...
git merge --no-ff --no-commit remotes/$REPO/$BRANCH
git reset -- *  #unstage all changes
git add $FILE
git checkout .  #cancel changes to all files but $FILE
...

然后你会记录修改的来源。