如何使当前目录成为 git 工作目录

How to make current directory a git working directory

在我知道 git.

的存在之前,我已经在 ~/Code/CPLUS 位置写入了多个 *.cpp 文件

现在我想使用git进行版本控制。

我创建了一个文件夹~/git_repo/,并在这个文件夹中,我运行 git init 命令。当我尝试运行路径~/Code/CPLUS下的命令git add my_first_c.cpp时,出现以下信息:

fatal: Not a git repository (or any of the parent directories): .git

然后我在路径~/Code/CPLUS下输入git init ~/git_repo/,输入git status时还是出现同样的错误

如果我在路径~/Code/CPLUS下输入git init,那么addcommit就可以执行了。唯一的问题是 .git 存储在 ~/Code/CPLUS/ 中,而我希望它存储在 ~/git_repo.

我的问题是如何使文件夹 ~/Code/CPLUS 成为工作目录,而回购信息存储在 ~/git_repo/ 中?而且我的机器没有GUI。

您可以尝试从终端(或您的 ~/.bashrc 中)导出变量 export GIT_WORK_TREE=~/git_repo/export GIT_DIR=../Code/CPLUS,以便 Git 使用这些变量。

感谢@Alariva,建议的解决方案确实解决了这个问题。 .git~/git_repo/ 中创建,输入 git --git-dir=/abs/path/to/repo/git_repo/.git add my_first_c.cpp 有效。

解决方案来自于此post