请问 git add 如何只 add 某一行 或者说 特定的行?

2016-11-21 16:22:10 +08:00
 singlepig

以前用图形 git 客户端的时候,有个功能是选中某些改动的行,就可以自动把这些行 git add ,而其他没有选中的,(比如一些 log 埋点,没有必要提交,但是后面还要用)就不会加入 git add 。

我想知道是否可以用命令行的方式实现同样的功能。

8502 次点击
所在节点    git
27 条回复
SpicyCat
2016-11-21 16:49:32 +08:00
git add -i, 然后选 patch
SilentDepth
2016-11-21 16:50:30 +08:00
`git add --interactive/--patch`?
不过感觉操作很麻烦,不如图形化用着方便,可能是我不好命令行的口味
singlepig
2016-11-21 16:57:37 +08:00
哈哈,我查到了,用 git add -p ,是我想要的。
http://stackoverflow.com/questions/4309156/commit-specific-lines-of-a-file-to-git
singlepig
2016-11-21 16:59:53 +08:00
@SilentDepth 能有 gui 当然最好,方便快捷。我是觉得不想为了这个再装一个不常用的 gui ,因为我平时还是直接敲命令多一点
singlepig
2016-11-21 17:00:57 +08:00
@SpicyCat 是的,-i 的 patch 和直接-p 是一样的操作模式。
millson
2016-11-21 17:04:35 +08:00
分享一下我对于类似问题的学习方法吧,使用 sourcetree ,设置中勾选"Always display full console output",这样每个操作实际执行的 git command 都有了
SilentDepth
2016-11-21 17:29:39 +08:00
@millson SourceTree 会添加额外的参数以保障性能或应对特殊情况,感觉这样学习会比较有压力
chinawrj
2016-11-21 17:38:20 +08:00
我是不会告诉你 tig 可以在字符界面下搞定这个事情的,而且简单快速。:)
yangg
2016-11-21 17:38:41 +08:00
不错,👍
27
2016-11-21 20:13:37 +08:00
感觉 sourcetree 比较方便
jon
2016-11-21 21:25:31 +08:00
居然 git 还能这样用
yoa1q7y
2016-11-21 21:28:30 +08:00
sourcetree 无比方便
singlepig
2016-11-21 22:23:03 +08:00
@yoa1q7y 是的,就这样,选中需要的,不要的不选, gui 很方便, github 的客户端也是,直接选中想要的行就行
singlepig
2016-11-21 22:25:14 +08:00
@millson 以前用 sourcetree ,还是 EI 刚出来的时候,挺好用的,就是偶尔会莫名假死,风扇狂转,后来没办法,弃用了,慢慢习惯命令行了。
singlepig
2016-11-21 22:25:33 +08:00
@jon 哈哈哈,神奇吧
onceyoung
2016-11-21 22:27:40 +08:00
哈哈,圣圣,你被我捉住了
singlepig
2016-11-21 22:30:21 +08:00
singlepig
2016-11-21 22:38:00 +08:00
@onceyoung 我曹?!你是哪只?
onceyoung
2016-11-22 10:08:39 +08:00
@singlepig you 猜
singlepig
2016-11-22 17:36:19 +08:00
@onceyoung x 丛 x ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/322122

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX