Git备份vs SVN
我是Git新手,但我在SVN方面有一些经验 我想将我的项目备份到另一台计算机上(例如我的) 在SVN中有一个带有分支和标记的项目,当然还有主干。 示例url:Git备份vs SVN,git,svn,backup,tortoisesvn,tortoisegit,Git,Svn,Backup,Tortoisesvn,Tortoisegit,我是Git新手,但我在SVN方面有一些经验 我想将我的项目备份到另一台计算机上(例如我的) 在SVN中有一个带有分支和标记的项目,当然还有主干。 示例url:https://svn.example.com/project 当我签出它时,我可以有一个项目的完整副本,带有标签、分支等,这样我就可以压缩所有内容并每天在另一台计算机上备份 Git上是这样的吗?我试过了,但是我不能同时拥有所有的代码,但是我可以通过切换/签出来拥有每个部分。 我在用乌龟 如果你有其他的解决办法,请告诉我 提前感谢。Git
https://svn.example.com/project
当我签出它时,我可以有一个项目的完整副本,带有标签、分支等,这样我就可以压缩所有内容并每天在另一台计算机上备份
Git上是这样的吗?我试过了,但是我不能同时拥有所有的代码,但是我可以通过切换/签出来拥有每个部分。
我在用乌龟
如果你有其他的解决办法,请告诉我
提前感谢。Git与Subversion的工作方式不同。在Subversion中,标记和分支实现为不同的路径。在Git中,分支和标记不是不同的路径,而是特定版本(及其所有历史记录)的标签/句柄
为了进行完整的备份,在Git中复制/备份整个工作树(或者克隆到一个裸存储库以节省空间,因为这样就不需要签出,或者将更改推送到远程存储库,例如GitLab/GitHub上)就足够了
每个Git存储库总是(在正常情况下)包含所有历史记录。这是可行的,因为Git是一个分布式VCS,基本上所有存储库都是平等的,没有一个是特殊的(比如在Subversion中)。没有中心位置(有时一个位置被定义为中心交换位置,但这不是必需的)。我将项目推送到GitHub私有存储库中,但还有另外两个用户,如果其中一个用户完全删除了项目,我将失去关于项目的一切。所以我想每天在另一台电脑上复制一份这个项目。我检查了Git bundle
命令,无法获得项目的完整备份,它只给了我master。我的命令:git bundle create repo.bundle HEAD master
工作树的副本将为您提供完整副本。也许您需要在TortoiseGit日志中启用“显示所有分支”以查看所有分支。查看参考浏览器。只有在获取并删除本地远程跟踪分支时,才会丢失项目信息。否则,即使在github上删除了项目或远程分支,它们仍将存在于本地克隆中。顺便说一句,实际上,git bundle create repo.bundle HEAD master
只备份master
和当前签出的分支,你知道为什么我会感到困惑,因为代码大小是4GB,但在Git中只有134MB,我觉得有点不对劲。但是,我检查了ans,发现134MB是所有代码历史记录(我所需要的全部)。