我开发了用于管理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.
感谢。