比方说,我有一个单一的文件,foo.txt的,我想使用Git来管理,我不希望它移动到自己的目录出来的(比方说)/用户/我/文档,其中也有一个大量其他文件我不想包含在foo.txt的回购中.这可能吗?
我尝试创建一个裸仓库(所以它不会被命名为.git):
git init --bare .foo.txt
Run Code Online (Sandbox Code Playgroud)
并计划通过在info/exclude文件中添加这样的内容来排除除foo.txt之外的所有内容:
*
!foo.txt
Run Code Online (Sandbox Code Playgroud)
但我遇到的问题是我甚git status
至无法做到,因为似乎没有办法传递.git目录的非标准替换.
使用普通的.git目录是行不通的,因为它会限制我对这个文件进行版本控制,或者强迫我在同一个repo中包含任何其他文件,并且我希望能够在其目录中对其他文件进行版本化自己的回购.
我意识到这不是Git的用例,但由于它是我已经熟悉的强大工具,我更愿意使用它而不是别的东西,如果有办法那样做的话.
如果你像这样运行git,你可以完全按照自己的意愿行事:
git --git-dir=.foo.txt --work-tree=. status
Run Code Online (Sandbox Code Playgroud)
将第一部分别名,git-foo
然后进入比赛.
如何使用 .gitignore 文件创建应编辑的文件的过滤器。此解决方案避免了 Windows 上不支持的硬链接。
例如以下文件:
$ cat .gitignore
*
!data.xml
Run Code Online (Sandbox Code Playgroud)
配置 git 忽略除“data.xml”之外的所有文件。
归档时间: |
|
查看次数: |
2645 次 |
最近记录: |