git添加所有内容,除了忽略.gitignore文件中的文件


120

我正在将源代码管理添加到没有项目的项目中。问题是最初有很多文件与.gitignore文件一起添加到git中,但是我不知道如何添加所有文件而不在.gitignore文件中包含与某些内容匹配的文件。

git add *

上面的命令不会添加任何文件,因为它会检测到.gitignore忽略的文件。

git add -f *

上面的命令将添加所有文件,包括我要忽略的文件。

那么,如何在仍然坚持.gitignore文件的同时添加所有文件?

Answers:


251

我认为您的意思git add .是将所有文件添加到ARE N'T中未指定的仓库中.gitignore-您可以通过键入以下内容查看这些更改git status

.bash中通常意味着该目录和所有其他目录递归,因此,如果您从回购的最底层做到这一点,你应该添加的所有文件。

我通常的git flow是创建.gitignore文件并将项目文件添加到仓库中。导入文件后,我将.gitignore通过键入内容来测试git status文件-如果看到添加的文件(例如,仅.php或.html,而不是.mp3或.mov),则可以git add .添加所有文件,并添加git commit -m "initial commit"到提交它们,您应该被设置。


3
如果我在这种情况下有什么git add --all .区别git add .呢?
Katedral Pillon

2
它与git add相同。
user454232


13

尝试git add . (这意味着“将当前目录及其以下的所有文件添加”)


5

另一种选择是使用Git存储库的exclude文件。该文件的工作方式类似于.gitignore文件,但未提交给存储库。

Github文档

您可以将此技术用于您不希望其他用户生成的本地生成的文件,例如您的编辑器创建的文件。

使用您喜欢的文本编辑器打开.git/info/excludeGit存储库根目录中名为的文件。您在此处添加的任何规则都不会被检入,只会忽略本地存储库中的文件。

  1. 在终端中,导航到Git存储库的位置
  2. 使用您喜欢的文本编辑器,打开文件 .git/info/exclude
  3. 添加规则的exclude文件,你会的.gitignore文件
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.