.gitignore文件在忽略一些我们不想控制的文件时非常有用。 不幸的是,当文件已经在版本控制之下的时候就不能使用了。 例如,我的.gitignore(已经添加到git)文件可能与我的同事想要的不同(例如,我想忽略Vim文件)。 每当我对这个文件进行修改,git就会把它显示为一个修改过的文件。 所以我的问题: 有没有办法忽略已经由Git控制的某个文件的更改? 有什么办法可以提交这些更改,但只保留给我自己吗? 显然,我不想使用分支,因为我正在某个分支上工作。
我一直在使用git,但仍然对.gitignore文件path感到困惑。 那么, .gitignore文件中以下两个path有什么区别? TMP / * 公共/文件/ ** / * 我可以理解, tmp/*将忽略其中的所有文件和文件夹。 我对吗? 但是,第二条线路是什么意思?
我知道使用.gitignore文件排除一些正在添加的文件,但我有几个config.php文件在源码树中,我需要排除只有一个,位于根,而其他保持在版本控制。 我应该写入.gitignore才能做到这一点?
我需要添加一些规则到我的.gitignore文件,但是,我无法find它在我的项目文件夹。 它不是由Xcode自动创build的吗? 如果不是,什么命令让我创build一个?
有没有办法忽略目录中的所有types的文件? **显然是没有意义的,所以这是行不通的: /public/static/**/*.js 这个想法是匹配任意嵌套的文件夹。
我试图解决一个大目录结构的gitignore问题,但为了简化我的问题,我已经减less到以下。 我有一个全新的git仓库中的两个文件(foo,bar)的以下目录结构(到目前为止没有提交): a/b/c/foo a/b/c/bar 显然,'git status -u'显示: # Untracked files: … # a/b/c/bar # a/b/c/foo 我想要做的是创build一个.gitignore文件,忽略/ b / c中的所有内容,但不会忽略文件“foo”。 如果我这样创build一个.gitignore: c/ 然后,'git status -u'将foo和bar都显示为忽略: # Untracked files: … # .gitignore 这是我所期望的。 现在,如果我为foo添加排除规则,则: c/ !foo 根据gitignore手册,我希望这个工作。 但它不 – 它仍然忽略foo: # Untracked files: … # .gitignore 这也不起作用: c/ !a/b/c/foo 这也不是: c/* !foo 得到: # Untracked files: … […]
.gitignore和.gitkeep什么.gitkeep ? 他们用不同的名字是同一个东西吗?或者他们都有不同的function? 我似乎无法在.gitkeep上find很多文档。
我正在尝试使用带有否定模式的.gitignore文件(以!开头的行),但是它不能按我期望的方式工作。 作为一个简单的例子,我有以下的目录结构: C:/gittest — .gitignore — aaa/ — bbb/ — file.txt — ccc/ — otherfile.txt 在我的gitignore文件中,我有这样的: aaa/ !aaa/ccc/ 我的理解(基于这个文档页面 )是文件aaa / ccc / otherfile.txt不应该被忽略,但实际上git是忽略aaa下的一切。 我误解了这句话:“一个可选的前缀!否定模式;任何先前模式排除的匹配文件将再次被包含”。 顺便说一句,这是在Windows上使用msysgit 1.7.0.2。
我只为文本文件创build了一个白名单。 * !*.txt 现在,我有一个未追踪的文本文件在一个子目录 – sub/dir/file.txt ,这是不显示(它被忽略)。 但是,显示根目录中的文本文件。 为什么是这样的,我该如何解决?
我的团队中的每个开发人员都有自己的本地configuration。 该configuration信息存储在我们的rake构build任务中使用的名为devtargets.rb的文件中。 不过,我不希望开发人员破坏对方的devtargets文件。 我的第一个想法是将该文件放在.gitignore列表中,这样它就不会被提交给git。 然后我开始想知道:是否可以提交文件,但忽略对文件的更改? 所以,我会提交该文件的默认版本,然后当开发人员在本地机器上进行更改时,git会忽略这些更改,当您执行git status或git commit时,它不会显示在已更改文件的列表中。 那可能吗? 这当然是一个很好的function…