如何在Windows上使用msysgit忽略Git中的目录或文件夹?
当前回答
在Unix上:
touch .gitignore
在Windows上:
echo > .gitignore
在终端中执行的这些命令将在当前位置创建.gitignore文件。
然后只需将信息添加到此.gitignore文件(例如使用Notepad++),哪些文件或文件夹应被忽略。保存更改。就是这样:)
更多信息:.gitignore
其他回答
若要忽略整个目录,请在其中放置.gitignore的“*”。
例如
示例系统
/root/
.gitignore
/dirA/
someFile1.txt
someFile2.txt
/dirB/
.gitignore
someFile3.txt
someFile4.txt
Goal
忽略dirB的内容/
顶级(/root/.gitignore)
你可以在这里“dirB/”
忽略的目录(/root/dirB/.gitignore)
或者你可以在这里“*”
Git在文件系统的每一步都监视gitignore。所以这里我选择dirB/.gitignore作为“*”来忽略dirB/,包括其中的所有文件和子磁盘。
多恩☺️
如果您想维护一个文件夹而不是其中的文件,只需在文件夹中放置一个“.gitignore”文件,其中包含“*”作为内容。此文件将使Git忽略存储库中的所有内容。但是.gitignore将包含在您的存储库中。
$ git add path/to/folder/.gitignore
如果您添加了一个空文件夹,则会收到此消息(.gitignore是一个隐藏文件)
The following paths are ignored by one of your .gitignore files:
path/to/folder/.gitignore
Use -f if you really want to add them.
fatal: no files added
因此,使用“-f”强制添加:
$ git add path/to/folder/.gitignore -f
当其他一切都失败时,尝试编辑文件
/.git/info/exclude
并将您想要的目录添加到文件末尾,如下所示:
# git ls-files --others --exclude-from=.git/info/exclude
# Lines that start with '#' are comments.
# For a project mostly in C, the following would be a good set of
# exclude patterns (uncomment them if you want to use them):
# *.[oa]
# *~
assets/
compiled/
我将文件夹“assets”和“compiled”添加到要忽略的文件和目录列表中。
默认情况下,当文件名为.gitignore.txt时,Windows资源管理器将显示.gitignore。
Git不会使用.gitignore.txt
您不能将文件重命名为.gitignore,因为Windows资源管理器认为它是一个没有名称的gitignore类型的文件。
非命令行解决方案:
You can rename a file to ".gitignore.", and it will create ".gitignore"
这对一些人来说可能非常明显,但我确实从其他答案中理解了这一点。
在目录中创建.gitignore文件本身没有任何作用。您必须将.gitignore作为文本文件打开,并将希望它忽略的文件/目录写在各自的行上。
所以cd到Git存储库目录
touch .gitignore
nano .gitignore
然后写下要忽略的文件和/或目录的名称及其扩展名(如果相关)。
此外,.gitignore在某些操作系统(例如Mac)上是一个隐藏文件,因此您需要ls-a来查看它,而不仅仅是ls。
推荐文章
- RPC失败;卷度传输已关闭,剩余未完成的读取数据
- 我应该在.gitignore文件中添加Django迁移文件吗?
- 错误:您对以下文件的本地更改将被签出覆盖
- Git rebase—即使所有合并冲突都已解决,仍然会继续报错
- 在Git中,我如何知道我的当前版本是什么?
- 如何运行一个PowerShell脚本而不显示窗口?
- PowerShell:仅为单个命令设置环境变量
- 跟踪所有远程git分支作为本地分支
- 自定义SSH端口上的Git
- 为什么这个Windows批处理文件只执行第一行,而在命令shell中执行所有三行?
- git如何显示不存在于.gitignore中的未跟踪文件
- 环境变量存储在Windows注册表的哪里?
- 有一个好的Valgrind Windows的替代品吗?
- Git错误:遇到7个文件应该是指针,但不是
- GitHub克隆与OAuth访问令牌