V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
singlepig
V2EX  ›  git

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

  •  
  •   singlepig · 2016-11-21 16:22:10 +08:00 · 8770 次点击
    这是一个创建于 2913 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    27 条回复    2023-08-09 08:11:36 +08:00
    SpicyCat
        1
    SpicyCat  
       2016-11-21 16:49:32 +08:00
    git add -i, 然后选 patch
    SilentDepth
        2
    SilentDepth  
       2016-11-21 16:50:30 +08:00
    `git add --interactive/--patch`?
    不过感觉操作很麻烦,不如图形化用着方便,可能是我不好命令行的口味
    singlepig
        3
    singlepig  
    OP
       2016-11-21 16:57:37 +08:00   ❤️ 2
    哈哈,我查到了,用 git add -p ,是我想要的。
    http://stackoverflow.com/questions/4309156/commit-specific-lines-of-a-file-to-git
    singlepig
        4
    singlepig  
    OP
       2016-11-21 16:59:53 +08:00
    @SilentDepth 能有 gui 当然最好,方便快捷。我是觉得不想为了这个再装一个不常用的 gui ,因为我平时还是直接敲命令多一点
    singlepig
        5
    singlepig  
    OP
       2016-11-21 17:00:57 +08:00
    @SpicyCat 是的,-i 的 patch 和直接-p 是一样的操作模式。
    millson
        6
    millson  
       2016-11-21 17:04:35 +08:00
    分享一下我对于类似问题的学习方法吧,使用 sourcetree ,设置中勾选"Always display full console output",这样每个操作实际执行的 git command 都有了
    SilentDepth
        7
    SilentDepth  
       2016-11-21 17:29:39 +08:00
    @millson SourceTree 会添加额外的参数以保障性能或应对特殊情况,感觉这样学习会比较有压力
    chinawrj
        8
    chinawrj  
       2016-11-21 17:38:20 +08:00
    我是不会告诉你 tig 可以在字符界面下搞定这个事情的,而且简单快速。:)
    yangg
        9
    yangg  
       2016-11-21 17:38:41 +08:00 via iPhone
    不错,👍
    27
        10
    27  
       2016-11-21 20:13:37 +08:00
    感觉 sourcetree 比较方便
    jon
        11
    jon  
       2016-11-21 21:25:31 +08:00
    居然 git 还能这样用
    yoa1q7y
        12
    yoa1q7y  
       2016-11-21 21:28:30 +08:00
    sourcetree 无比方便
    singlepig
        13
    singlepig  
    OP
       2016-11-21 22:23:03 +08:00
    @yoa1q7y 是的,就这样,选中需要的,不要的不选, gui 很方便, github 的客户端也是,直接选中想要的行就行
    singlepig
        14
    singlepig  
    OP
       2016-11-21 22:25:14 +08:00
    @millson 以前用 sourcetree ,还是 EI 刚出来的时候,挺好用的,就是偶尔会莫名假死,风扇狂转,后来没办法,弃用了,慢慢习惯命令行了。
    singlepig
        15
    singlepig  
    OP
       2016-11-21 22:25:33 +08:00
    @jon 哈哈哈,神奇吧
    onceyoung
        16
    onceyoung  
       2016-11-21 22:27:40 +08:00
    哈哈,圣圣,你被我捉住了
    singlepig
        17
    singlepig  
    OP
       2016-11-21 22:30:21 +08:00
    singlepig
        18
    singlepig  
    OP
       2016-11-21 22:38:00 +08:00
    @onceyoung 我曹?!你是哪只?
    onceyoung
        19
    onceyoung  
       2016-11-22 10:08:39 +08:00
    @singlepig you 猜
    singlepig
        20
    singlepig  
    OP
       2016-11-22 17:36:19 +08:00
    @onceyoung x 丛 x ?
    Necfol
        21
    Necfol  
       2017-05-09 15:10:49 +08:00
    圣圣,你也被我抓住了!
    singlepig
        22
    singlepig  
    OP
       2017-05-09 19:13:53 +08:00
    @Necfol 666
    Necfol
        23
    Necfol  
       2017-05-10 10:06:40 +08:00
    @singlepig 楼上是你的庄二哥
    singlepig
        24
    singlepig  
    OP
       2017-05-11 19:26:24 +08:00
    @Necfol zmq 啊!我还以为是 yangcongyu 呢,哈哈哈
    PrtScScrLk
        25
    PrtScScrLk  
       2023-08-08 08:45:07 +08:00
    @singlepig 好用,架不住我领导都不用代码格式化,我用代码格式化,导致我跟他代码合并一大堆都是因为空格的问题= =要挑选的有用的代码提交上去然后 discard ,太难了。
    singlepig
        26
    singlepig  
    OP
       2023-08-08 22:11:14 +08:00
    @PrtScScrLk 用代码管理工具,但是不用统一格式化工具,这个做法我觉得好难受
    PrtScScrLk
        27
    PrtScScrLk  
       2023-08-09 08:11:36 +08:00
    @singlepig 是的,我现在也是手动格式化了。领导四十多了,已经有一套很固定的编程方式了,不容易让他改变。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5532 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 06:54 · PVG 14:54 · LAX 22:54 · JFK 01:54
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.