繁体   English   中英

如何使用git补丁文件以及如何告诉git bash我要使用差异工具?

[英]How to work with a git patch file and how to tell git bash I want to use a diff tool?

我是使用Git的初学者。

我有两个分支:

develop
*test

我现在正在测试中,我想重新开发,所以我做了

git rebase develop

有一些合并冲突,所以git告诉我它在.git / rebase-apply / patch中创建了一个补丁文件

我打开该文件,发现那里有很多冲突。 接下来我该怎么办?

下次遇到合并冲突时,如何使git bash打开git diff工具? 我应该为Windows安装哪个差异工具?

编辑:

因此,这是patch文件的一部分:

diff --git a/app/src/main/java/com/example/android/app/MainActivity.java 
b/app/src/main/java/com/example/android/app/MainActivity.java
index 36c85c8d1f780dd7b0a6dacada717524e95bf7d4..174badb785e6f28b0d9ecd32164a7153b5f2acd5 100755
--- a/app/src/main/java/com/example/android/app/MainActivity.java
+++ b/app/src/main/java/com/example/android/app/MainActivity.java
@@ -393,7 +393,7 @@ public class MainActivity extends BaseActivity
      */
     public void showLoginFragment(boolean setAsActive) {

-        showFragment(LoginFragment_.builder().setAsActive(setAsActive)
+        showFragment(LandingFragment_.builder().setAsActive(setAsActive)
                 , true
                 , "login"
                 , true

假设我要删除LoginFragment行并保留LandingFragment行,我必须删除整行(以及-符号),然后保存文件,对吗?

EDIT2:原来我已经安装了kdiff。 我如何告诉Git使用它而不是让我浏览补丁文件?

假设您在test.txt文件中有冲突。

您应该打开test.txt文件并手动解决冲突(保留所需的行,并从文件中删除所有不需要的行)。 解决冲突后,使用git add <path to that file>然后运行git rebase --continue

融合是相当不错的差异工具。 您可以在http://meldmerge.org/中找到安装和其他说明。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM