3

我已提交此文件:

foo.txt

line 1
line 2
line 3

现在我将其修改为:

line 1
line 1.5
line 2
line 2.5
line 3

我跑git add . && git diff --cached foo.txt了,这就是我得到的:

diff --git a/foo.txt b/foo.txt
index c4dfc64..4942553 100644
--- a/foo.txt
+++ b/foo.txt
@@ -1,3 +1,5 @@
 line 1
+line 1.5^M
 line 2
+line 2.5^M
 line 3

假设我现在想line 1.5从索引中删除并保留line 2.5,我将如何使用 LibGit2Sharp 执行此操作?

这也可以反过来问:如何将部分文件添加到索引?我正在寻找某种程序化版本的git add -p.

4

1 回答 1

1

显然没有简单的(理解:LibGit2Sharp-native)方法来做到这一点。

但这可能是可能的。为什么要删除此特定行?这取决于您的标准,但更简单的方法是简单地编辑文件本身(由 的结果帮助git diff --cached foo.txt)。所以 git 不会暂存你不需要的修改。

于 2012-09-12T07:46:32.280 回答