如何配置 Git 以将其与 Dropbox 一起使用?
Posted
技术标签:
【中文标题】如何配置 Git 以将其与 Dropbox 一起使用?【英文标题】:How to configure Git for using it with Dropbox? 【发布时间】:2011-04-07 15:48:15 【问题描述】:我用git已经半年多了,不知道是不是完全用git了。
首先,我一直在尝试使用 Dropbox,我觉得如果我能将它融入我的工作流程中,那就太好了,因为 Dropbox 非常方便。
-
我有一台台式机和一台笔记本电脑。两个都
有保管箱。
我通过以下方式初始化了我的 Dropbox 存储库
做一个
git init --bare
。然后
在我桌面的提交后脚本中,
我有一个git push --mirror
dropbox
。
这样我的桌面和保管箱将始终完全镜像,这是一件好事。
我真正的问题是:我应该如何设置我的笔记本电脑? 我听到了一些建议:
-
从我的桌面拉出,这样我的
笔记本电脑的起源是台式机。
直接从保管箱中拉取,以便我的
笔记本电脑的来源是 Dropbox。
我一直在做 2 号,我不知道我做的是否正确。 我的工作流程包括:
-
每次我在笔记本电脑上时,我都会执行一次 git pull(因为笔记本电脑的来源是保管箱,保管箱会自行更新)
然后,当我将分支从 Dropbox 签出到本地分支时。
完成工作后,我承诺。
这是我感到困惑的地方:我是否也应该将 --mirror 推送到我的保管箱存储库(我的笔记本电脑的原始存储库)?我在这方面遇到了一些困难:有时 Dropbox 不能很好地同步,等等
目前,在我的笔记本电脑上执行git push --mirror origin
之后,在我的桌面上执行git branch -r
不显示我最近的笔记本电脑提交。谁能告诉我为什么?
我提到直接从我的桌面拉取,因为这样我总是可以初始化拉取,并且我 100% 确信同步已完成。使用 Dropbox,我永远无法 100% 确定更新是否已推送到 Dropbox 服务器
【问题讨论】:
【参考方案1】:如果你想添加一个中间 repo 容器,Dropbox 可以提供:
您使用 git bundle
format:它会生成一个只有 一个 文件的裸仓库(这意味着 Dropbox 更有可能将其正确同步到您的任何计算机:它只是复制一个文件,而不是“整个结构”,你不确定你会从中得到所有的东西)。
您在每次保存时都使用增量捆绑包(同样,每次保存一个文件,很容易从另一侧拉取已完成的内容)。 在源(笔记本电脑或台式机)和日期之后命名您的增量。 基本上,您将从任何尚未拉取的 xxx.bundle 中拉取。
您会定期清理所有中间增量捆绑包,并将其替换为来自任何最新源的完整捆绑包
该模型允许:
简单的同步过程(一个或很少的文件) 快速保存过程(使用增量捆绑包) scaling:如果有多个参与者,即如果几个人正在更新同一个分支,您可以通过使用不同的远程名称引用他们的包来隔离他们的贡献(因为每个包都是一个可以从中提取的裸仓库)。【讨论】:
@nevan:感谢您的各种编辑,该帖子需要它们!以上是关于如何配置 Git 以将其与 Dropbox 一起使用?的主要内容,如果未能解决你的问题,请参考以下文章
如何加载 JSON 数据以将其与 select2 插件一起使用
如何模拟 JWT 令牌以将其与 Mockito 和 Spring Boot 一起使用
如何为我的 SQL 数据库添加远程主机以将其与我开发的应用程序连接