Git参考目录<;回购>;/。吉特/参考文献
Windows Git上的引用存在问题,仅在以下情况下有所不同:Git参考目录<;回购>;/。吉特/参考文献,git,refs,Git,Refs,Windows Git上的引用存在问题,仅在以下情况下有所不同: $ git branch foo $ git branch FOO fatal: A branch named 'FOO' already exists. $ git branch dir/foo $ git branch DIR/bar $ git branch --list * develop foo dir/bar dir/foo 这可以通过Git使用文件系统在目录/.Git/refs/heads/dir内将
$ git branch foo
$ git branch FOO
fatal: A branch named 'FOO' already exists.
$ git branch dir/foo
$ git branch DIR/bar
$ git branch --list
* develop
foo
dir/bar
dir/foo
这可以通过Git使用文件系统在目录/.Git/refs/heads/dir
内将refs存储为文件foo
和bar
来解释
$ git branch --delete dir/bar
$ git branch --delete dir/foo
$ git branch --list
* develop
foo
较旧的Git版本似乎在/.Git/refs
中留下了一些空目录,较新的Git版本将其删除
手动删除/.git/refs
中的空目录安全吗
手动删除/.git/refs
中的空目录安全吗
是,如果没有其他运行。Git将在需要时重新创建它们
(如果Git命令正在运行,它可能会确定该目录存在且不需要创建,然后您删除该目录,然后Git命令会尝试使用刚刚删除的目录中的文件。)
请注意,如果运行git pack refs--all
,现有的ref将合并到包含打包引用的单个文件中。这将允许您创建只在大小写上有所不同的新引用,但不要这样做,因为当Git更新引用时,它会在文件系统中遇到大小写折叠问题
(解决办法是Git停止使用文件系统中的文件来保存参考值。我相信这有一天会发生,我只是不知道什么时候。)