使用dropbox和git而不需要conflits。

问题描述 投票:15回答:4

我正在与只使用Dropbox作为版本控制和协作工具的人合作。我不打算改变他们的行为。另一方面,我是一个git痴迷者,想把它用于我的个人用途。

他们有什么办法可以在Dropbox中不同步地拥有一个.git目录吗?

谢谢。

git dropbox
4个回答
10
投票

根据 这条 在Dropbox论坛中,你不能省略exclude文件夹。有 选择性同步 但这也不能满足你的需求。

所以目前最好的解决方案是手动同步,比如用 rsync(1):

  1. 在某处建立一个新的文件夹
  2. 将此文件夹与Dropbox中的文件夹同步,使用的是 rsync. 我建议写一个脚本。
  3. 在这个新文件夹中添加一个git repo。
  4. 使用第二个rsync脚本来更新Dropbox文件夹(使用 --exclude .git 此处)

14
投票

选择性同步似乎是解决方案,但要注意:当您将一个文件夹标记为排除,dropbox将删除它。

只需备份您的.git文件夹,并将其标记为排除,用 选择性同步,dropbox会删除它。当你把文件夹复制回来时,dropbox不会再删除它,而且它将缺少dropbox同步标记(及其子代)。


9
投票

我可以看到两个选择。

  1. 使用提示中给出的 https:/stackoverflow.coma8603156112019。 用--git-dir和--work-tree将.git仓库文件存储在外部位置(比如~gitdropboxmyproject.git)。为了模拟使用,你也可以在.git中添加一个.git 档案(不是目录)在你的dropbox同步文件夹中,内容为 "gitdir:pathtorepo.git",这样你就可以像正常使用git了。

  2. 使用Dylan R.在 "Dylan R. "中描述的方法。https:/forums.dropbox.comtopic.php?id=52360#post-387887。 来忽略.git文件夹。然后在dropbox系统中保留一个empy .git文件夹,用选择性同步功能在本地忽略它,然后初始化版本库。要注意的是,当你用选择性同步功能删除现有的.git文件夹时,它就会被dropbox删除,所以如果你有历史记录想保留的话,请确保你有一个本地备份。


0
投票

2020年更新:现在dropbox有选项标记要忽略的文件夹或文件,如这里所述。https:/help.dropbox.comfiles-foldersrestore-deleteignored-files。

attr -s com.dropbox.ignored -V 1 myfoldername
© www.soinside.com 2019 - 2024. All rights reserved.