代码之家  ›  专栏  ›  技术社区  ›  Lee McAlilly

如果我以前添加git,git commit-am是多余的吗?

git
  •  38
  • Lee McAlilly  · 技术社区  · 14 年前

    git add . 然后 git commit -am "commit message"

    我能跑了吗 git添加。 git commit -m "commit message" 或者,只是 git commit-am“提交消息”

    5 回复  |  直到 13 年前
        1
  •  49
  •   Tuminoid    14 年前

    Git add + git commit -m git commit -am 将提交跟踪文件上的所有更改,但不会添加新文件。

        2
  •  31
  •   Karl Horky Alexandra Rusina    6 年前

    对于Git 2.0之前的版本,运行它不是多余的 git commit -am 如果你删除了任何跟踪的文件。请参阅下面选项的进一步说明。

    3) 在下面。

    不添加删除项 .

    使用Git<2.0:

    $ git add .
    $ git commit -m
    

    Git>=2.0时:

    $ git add --ignore-removal .
    $ git commit -m
    

    不添加新文件

    $ git commit -am
    

    使用Git<2.0:

    $ git add .
    $ git commit -am
    

    …或:

    $ git add -A
    $ git commit -m
    

    $ git add .
    $ git commit -m
    
        3
  •  11
  •   xZise    13 年前

    事实上, git commit -a 并不总是多余的,因为它也删除文件!例如,您有两个文件:一个文件被跟踪,另一个不被跟踪。现在您要删除跟踪的(无处不在)并添加未跟踪的。

    git add . 然后 git commit 它将跟踪新文件,但不会删除存储库中的旧文件。

    所以你要么执行 git rm … .

        4
  •  4
  •   Daniel Stutzbach Edward Leno    14 年前

    git add (你原来的问题和一些答案后来经过编辑,使这段时间更清楚)。

    git add . 将当前目录(和任何子目录)中的所有文件添加到索引中(被忽略的文件除外) .gitignore ).

    -a 选择 git commit 将包括对git已经跟踪的文件所做的所有更改,即使这些更改尚未添加到索引中。

    git add .; git commit git commit -a 不会的。

    git add .; git commit -a -a 什么都不做。

        5
  •  2
  •   kashif    14 年前

    这个 -a

    git add . 然后它已经添加了当前目录中的所有文件,即新文件和修改后的文件。所以你不需要 -a git -m "msg"