【问题标题】:Add all files in git在 git 中添加所有文件
【发布时间】:2014-04-06 04:14:43
【问题描述】:

我有这个 git 状态:

User#/d/Work/Project/Module1/NV/build (master)$ git status
# On branch master
# Your branch is ahead of 'origin/master' by 3 commits.
#   (use "git push" to publish your local commits)
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       modified:   ../../Module1/CMakeLists.txt
#       modified:   ../../Module1/Container.cpp
#
no changes added to commit (use "git add" and/or "git commit -a")

如何添加这 2 个文件? git add -A 不起作用? 我知道出于显而易见的原因可以使用选项git add ../../.

我知道可以使用git add 选项添加文件,但我不记得了,也找不到了。我用git version 1.8.1.msysgit.1

【问题讨论】:

  • 您在子目录中。为什么你不能只做这个命令? cd ../.. && git add .
  • > 没有更改提交(使用“git add”和/或“git commit -a”)?
  • @cooperok 我已经说过git add ../../. 不是一个选项。
  • @Ajedi34 你读过我的问题吗?我已经很难过我尝试了git add -A .,但它不起作用。我认为很明显git add . 不起作用。我想添加文件而不是提交它们。

标签: git msysgit git-add


【解决方案1】:

当我从一个子目录运行 git add -A 时,我的 git (1.8.3.3) 版本给了我这个警告:

警告:'git add --all (or -A)' 的行为没有路径参数 来自树的子目录将在 Git 2.0 中更改,并且不应该 不再被使用。要为整个树添加内容,请运行:

git add --all :/ (或 git add -A :/)

要将命令限制在当前目录,请运行:

git 添加 --all 。 (或 git add -A 。)

使用当前的 Git 版本,命令仅限于当前 目录。

所以您可能正在寻找的是git add -A :/。您可以使用 git config --global alias.addall 'add -A :/' 轻松为此创建别名。

【讨论】:

    【解决方案2】:

    rev-parse 命令可用于查找 git 项目的根目录,然后您可以将其传递给 git add 命令,如下所示:

    git add $(git rev-parse --show-toplevel)
    

    【讨论】:

    • 在 Bash 中使用 $() 子shell 对我有用。我不确定 msysgit 能给你什么
    • 也适用于msysgit
    猜你喜欢
    • 2015-12-04
    • 2016-05-03
    • 1970-01-01
    • 2020-08-24
    • 1970-01-01
    • 2015-02-24
    • 1970-01-01
    • 2011-12-05
    • 1970-01-01
    相关资源
    最近更新 更多