linux - 如何将 git 存储库分离/解耦到不同的位置

标签 linux git repository backup

我的请求可能看起来很奇怪,但在我解释了我这样做的原因后它会更有意义。

所以我在 /path/to/myprojects 下有我的个人项目。下面可能是 C、Perl、Shell、Tcl 等。现在我想将这些项目组(C、Perl 等)放在 git 下,但在不同的位置,例如 /path/to/mygits/

我想这样做的原因是,传统上我先通过 rar 将我的/path/to/myprojects 备份到其他位置。因为它们都是基于文本的,所以 rar 它们将产生极好的压缩比。现在我想保持同样的做法,即使我已经引入了 git。因此,我需要将二进制 git 存储库从我的文本基础文件夹中移到一个单独的二进制基础文件夹中。

我在 stackoverflow 上的所有发现都表明不可能,或者我“必须使用可能非常痛苦的子模块”: Git: Different Working Directory and Repository location , git repository with folders in different locations , Add Separate Directories/Projects/Files to Git Repository

但是,有一个答案表明可以将 git 工作目录和 git 存储库目录分离: how do I change the location of a Git repository 但它说了一些关于 git reset --hard 我想知道细节的事情。

同时使用 GIT_DIR 似乎是另一种解决方案。

有人可以帮忙吗?

谢谢

最佳答案

好吧,久等了,让我回答我自己的问题。 正如 DCoder 指出的那样,答案在 Can I store the .git folder outside the files I want tracked?。 .

即,那里列出了许多基于 git 的解决方案,所有这些都需要一些额外的 混帐配置。如果在 Windows 下,您可能必须执行这些操作。然而,在 Linux 下,将 .git 目录符号链接(symbolic link)到其他地方是最简单和最干净的解决方案。

关于linux - 如何将 git 存储库分离/解耦到不同的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15323951/

相关文章:

Linux:在这种情况下我应该使用进程还是线程?

linux - 我需要帮助来使用 gnuplot 创建图表

linux - 安装和解锁加密的 Truecrypt 驱动器

git - 如何安全地镜像 git 存储库?

repository - 神器中的 Gradle 发行版存储库已过时?

linux - 随机运行 Bash 脚本

git - 适用于许多小文件的最佳 git 类版本控制工具

git - 在克隆 GitHub 存储库之前如何查看其大小?

java - 如何在CVS中自动复制项目

go - Golang 存储库的正确结构