过滤具有冲突标记

时间:2018-03-21 13:53:46

标签: git git-diff git-merge-conflict

我开发了用于管理git存储库的工具。 我必须开发自定义git commit命令, 它将是本地git commit的包装器,带有一些检查。 在我的自定义提交中,当且仅当存储库没有冲突时,我才能调用git commit。 所以我必须过滤未合并的文件并检查它们是否没有冲突标记,例如我们<<<<<<<<< ,======和>>>>>>>。

例如:

I have  a conflicted files:

Unmerged paths:
  (use "git add <file>..." to mark resolution)

        both modified:   file_a.txt
        both modified:   file_b.txt
        both modified:   file_c.txt

Each files contains conflicted markers.

Let's assume that i merged *file_a.txt,file_b.txt*  and remove markers.
But *file_c.txt* still conflicting, and i can't call git add .

let's summarize:
    I can commit changes only when repository doesn have conflict and conflict markers.
    I think command: 
      git diff-index --name-only -G "^(<|=|>){7} " HEAD --diff-filter=U
    can help me , but i don't understand why it not works.

感谢。

0 个答案:

没有答案