【发布时间】:2020-11-03 20:32:54
【问题描述】:
我在我的 git 存储库中有一个已编辑的文件,并希望使用 git add -p 将一些更改添加到暂存区域。
有一个不可分割的块,其中包含两个添加的行,我想添加第二行,但不是第一行。所以我试图通过编辑大块来删除我不想暂存的行:
# Manual hunk edit mode -- see bottom for a quick guide.
@@ -1,5 +2,7 @@
mod vec2;
#[cfg(test)]
mod vec2_tests;
pub use self::vec2::Vec2;
+pub use self::vec3::Vec3;
+use std::ops::{Add, AddAssign, Sub, SubAssign, Mul, MulAssign};
# ---
# To remove '-' lines, make them ' ' lines (context).
# To remove '+' lines, delete them.
# Lines starting with # will be removed.
我删除了添加的第一行:+pub use self::vec3::Vec3;,保存并退出编辑器。
Git 告诉我:
错误:补丁失败:src/geo/mod.rs:1
错误:src/geo/mod.rs:补丁不适用
我不明白为什么这不起作用。这里有什么问题?我怎样才能上演第二行,而不是第一行?
【问题讨论】:
-
尝试同时更改第二个文件的行范围:
+2,7->+2,6 -
不起作用:(
-
手动编辑补丁块不是很方便,但是,这是您希望将文件编辑为您真正想要的文件并运行普通
git add -
但是我不想放入下一次提交但之后的更改会丢失。我可以将整个内容保存到一个临时文件中,然后将实际文件编辑为我想要提交的内容。我只是想我可以用 git 做一些事情,而不是自己摆弄这些变化。
-
2,7中的2表示在添加的文件的最开头插入了一行额外的行。是这样吗?
标签: git