我有一个非常有问题的git合并,我的回购现在有点麻烦。
实际上,我有一个很多的文件似乎是这样的:
<<<<<<< HEAD
...version1...
=======
...version2...
>>>>>>> <long hexa code>
众所周知,这是合并冲突情况下的正常行为。 但是我没有其他文件版本,只有 。
我怎样才能以交互方式合并?我需要的是看到彼此相邻的“version1”和“version2”,并能够以交互方式合并它们。
当然,这些文件格式意味着每个软件都存在语法错误。
git merge
并且所有合并工具都说,没有合并冲突。但是,有。。
我该怎么办?
扩展程序#1: 我用一些shellcripting分割文件,使用命令
for i in $(cat ../conflicts); do csplit $i '/=======/' -f $i. -n 1;done
现在,我在path.0
和path.1
中拥有这些文件的部分内容。现在我需要一个交互式解决方案来合并它们。
答案 0 :(得分:1)
如果git说没有合并冲突,那么这些文件已按原样添加或已经提交。
如果它们已按原样添加,那么您应该运行git reset HEAD
,这将重置索引的状态。然后,您应该再次看到已提交为新文件的所有文件,在这种情况下,您可以单独处理它们。
如果他们实际上已经提交,那么您需要撤消合并节点,然后再次执行合并节点。您可以使用git reset --hard HEAD^
重置为上一个已知点(然后抛弃提交)并再次重新进行合并。请注意,此选项会丢失您的数据;你再次有效地重新合并了。
答案 1 :(得分:0)
如果要解决图形环境中的冲突,可以尝试25
命令。当然,您需要安装一个有效的工具。这是该文档的摘录;请注意列出的有效值:
private void invokeOGShareDialog(Bitmap bitmap) { // Create OG object ShareOpenGraphObject object = new ShareOpenGraphObject.Builder() .putString("og:type", "books.book") .putString("og:title", "A Game of Thrones") .putString("og:description", "In the frozen wastes to the north of Winterfell, " + "sinister and supernatural forces are mustering.") .putString("books:isbn", "0-553-57340-3") .build(); SharePhoto photo = new SharePhoto.Builder() .setBitmap(bitmap) .setUserGenerated(true) .build(); // Create an action ShareOpenGraphAction action = new ShareOpenGraphAction.Builder() .setActionType("books.reads") .putObject("book", object) .putPhoto("image", photo) .build(); // Create the content ShareOpenGraphContent content = new ShareOpenGraphContent.Builder() .setPreviewPropertyName("book") .setAction(action) .build(); ShareDialog.show(this, content); }