我正在尝试为我已经工作了一段时间的项目设置Git.我记得很久以前设置Git但从未出于各种原因使用过它.现在我想使用它我得到一个奇怪的问题,我认为这与旧安装有关.
为了重新开始,我安装了一个新的Ubuntu操作系统,这样就不会有Git安装,我复制了项目(Grails).然后我导航到该目录并运行以下命令:
git init
git remote add origin https://USERNAME@bitbucket.org/USERNAME/APPNAME.git
Run Code Online (Sandbox Code Playgroud)
然后我跑了:
git add .
Run Code Online (Sandbox Code Playgroud)
这是我得到以下错误的地方:
fatal: Not a git repository: /home/user/workspace/App_V3/.git/modules/plugins/grails-spring-security-ui
Run Code Online (Sandbox Code Playgroud)
这个错误很奇怪,因为它甚至不匹配我所在的目录,因为目录如下:
/ home/user中/工作区/ App_V7 /
我想我原本可能在旧操作系统的App_V3文件夹中设置了Git,但不知道为什么它仍然指向该目录,因为我已经运行下面的代码重新初始化它:
rm -rf .git
git init
Run Code Online (Sandbox Code Playgroud)
有人可以帮助我,因为它非常令人沮丧:S
提前致谢
我不是在问如何移动 git 存储库。我想将 .git 中包含的元数据移动到一台机器上的其他地方,而不影响世界其他地方。
目标是拥有
~/gitmetadata/myproject/.git
~/gitmetadata/myproject/.gitignore
~/somecode/myproject/ # No .git here anymore
Run Code Online (Sandbox Code Playgroud)
本练习的目的是将 .git 放在持久性存储 (ssd) 上,而保存源代码/目标代码等的工作目录在 ram 磁盘上。我并不特别想将 .git 也放在 ramdisk 上,因为我不想通过克隆远程存储库来启动每次重新启动。
理想情况下,我正在寻找一个配置选项,我可以将其写入每台机器的配置文件,上面写着“实际上,文件在那里”。
我可以通过拥有一个我从中提取的本地存储库来解决这个问题,前提是我学习了如何配置一个 git 存储库来进行透明转发,或者通过修改文件系统 unionfs 样式来解决这个问题,这会很慢。
git 可以将 .git 元数据放在其他地方吗?
编辑:答案之一包括短语“git config core.worktree”。将此输入谷歌发现了我的搜索没有的重复项,2013 年,2009 年