结账后,相同的更改会再次出现

时间:2012-06-05 10:05:32

标签: git changeset

Git不断添加相同的变更集,如下所示:

@@ -1,12 +1,12 @@
-<?xml version="1.0" encoding="utf-8"?>
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="fill_parent"
-    android:layout_height="fill_parent"
-    android:orientation="vertical" >
-
-    <TextView
-        android:layout_width="fill_parent"
-        android:layout_height="wrap_content"
-       android:text="@string/hello" />
-
+<?xml version="1.0" encoding="utf-8"?>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="fill_parent"
+    android:layout_height="fill_parent"
+    android:orientation="vertical" >
+
+    <TextView
+        android:layout_width="fill_parent"
+        android:layout_height="wrap_content"
+        android:text="@string/hello" />
+
 </LinearLayout>
\ No newline at end of file

该文件未在任何编辑器中打开,每次我通过执行git checkout或使用github工具放弃更改时,更改会重新出现,而我甚至不做任何事情。提交文件没有任何改变,相同的变更集立即重新出现。

如何防止这样做?

1 个答案:

答案 0 :(得分:0)

整个文件总是被更改? 行结尾!(读作LINE ENDINGS !!!)

您可以在git's manual上阅读line ending conversion,在此基础上阅读Github nice detailed explanation,但基本上可以这样说:

  • 您的编辑应该使用预期的行结尾(大多数人坚持使用操作系统默认值)
  • gitconfig中的core.autocrlf应该遵循编辑器的选项。

如果您使用错误的行结尾进行提交(即git repo应始终位于LF中),您可能需要发出修复行问题的提交。