git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
pityonline
V2EX  ›  git

Git on Dropbox -- Git for fun!

  •  
  •   pityonline · Nov 22, 2012 · 8333 views
    This topic created in 4952 days ago, the information mentioned may be changed or developed.
    用过 git 的朋友肯定对 GitHub 不陌生,其所有的好处就不提了,但 GitHub 只允许创建公开代码仓库,像我这样不会写代码的新手,羞于把丑陋且满身 bug 的代码放在 GitHub 上,或出于某些安全性考虑,如代码中含有密码或不宜公开的内容,则不宜将代码放在 GitHub 上。如果有必要在 GitHub 上创建私有代码仓库,需要每月支付 $7.0,但就我目前的水平来看,根本没必要。还好,我们有 Dropbox!

    Dropbox 依然不必多讲,这里只是说一下它的另一个好处,可以将你的私有代码推送到 Dropbox 上,简单来讲就是在你的 Dropbox 中创建一个存放 git repo 的目录,然后作为远程仓库来使用。过程很简单,请 Google。或参考: https://github.com/othercat/MyUtilities/blob/master/OSXShellCommands/git-dropbox.sh

    这样解决了私有代码仓库的问题,但我还有新的需求,我想在小范围内分享一些代码,并且想和朋友对这些代码进行一些协作,也是可以的。与 GitHub 不同,Dropbox 需要使用邀请共享来进行协作。进入 Dropbox 官网,选择 Sharing,New shared folder,选择那个你需要共享的目录,邀请他人共享那个远程仓库。别人接受共享申请后会自动在其 Dropbox 目录中同步你的远程仓库,这时他只需 git clone ~/Dropbox/xxx.git 即可克隆你的代码到本地,然后就可以进行对代码的增删,修改,提交,分支操作,及 git 可用的一切,提交后只要 push 即可,因为是向本地提交代码,速度绝对是秒杀,Dropbox 帮你完成网络同步部分。

    参与者可能只是觉得好玩儿试用了一下再不需要你共享的代码,他完全可以删除 Dropbox 中共享的那个远程仓库,Dropbox 对这种行为处理得比较好,参与者删除目录并不会把你的目录也删除,对于 Dropbox 来说,只是他退出了这个分享小组而已,而他之前的操作都会全部保留。

    缺点:因为 Dropbox 好像不给你开 ssh 端口,也没给你配置好 git 服务,所以直接通过网址分享不行,只能小范围分享协作,并且需要邀请才可以,相对麻烦。再就是权限管理可能存在问题。由于网络原因,可能会产生同步问题,或导致 HEAD 冲突,或丢失 commit,尤其在国内,Dropbox 并不是实时同步的,有时候需要手动重启 Dropbox。至于需要手动邀请这件相当麻烦的事儿,应该有解决方案,如果 Dropbox 提供一些有用的 api,可通过 api 实现他人主动发送请求。

    不知道大家对这个想法怎么看?我已经创建了供共享测试的 repo,有兴趣可以测试一下,请留下注册 Dropbox 用的邮箱,或发邮件至 [email protected] 申请共享测试。欢迎参与!
    24 replies    1970-01-01 08:00:00 +08:00
    lldong
        1
    lldong  
       Nov 22, 2012
    gist也可以当一个repo用,比如 git.io/mini
    chloerei
        2
    chloerei  
       Nov 22, 2012
    想想就觉得很容易冲突。
    jerry
        3
    jerry  
       Nov 22, 2012
    私有仓库可以用 bitbucket
    pityonline
        4
    pityonline  
    OP
       Nov 22, 2012
    @lldong 当然可以,但如果有不宜公开的内容,放到 gist 上也不好吧?
    lldong
        5
    lldong  
       Nov 22, 2012
    @pityonline gist也有private的
    pityonline
        6
    pityonline  
    OP
       Nov 22, 2012
    @chloerei 的确很容易冲突啊,同时 commit 或同步问题都可能导致冲突,不过检查冲突倒也很容易。

    @jerry 我还没有用过 bitbucket,感觉从速度方面,不管是 GitHub 还是 bitbucket 或是其它代码托管服务商,因为网络关系,push 和 pull 等操作都会有延时的,可能延时并不重要,而且 Dropbox 虽然是推送提交快,但同步起来延时更严重,如果你很急的话。这样可以考虑国内网盘,当然我没用过,不知道效果如何。
    pityonline
        7
    pityonline  
    OP
       Nov 22, 2012
    @lldong 哈哈,火星了啊,我还未自己创建过 gist,所以还不知道。的确如果使用私有 gist 那跟私有代码仓库也差不多了,只不过是在 GitHub 上的显示方式不同而,本地都一样的。
    allenm
        8
    allenm  
       Nov 22, 2012
    自己有服务器的话,搭建一个 git server 还是非常简单的。
    cabbala
        9
    cabbala  
       Nov 22, 2012
    这种repo不建议多人push,貌似是因为没有锁机制,同时push会有冲突
    CoX
        10
    CoX  
       Nov 22, 2012
    openshift 这种平台其实也可以当作自己的私有代码仓库的,只不过分享的话,就麻烦了点。
    jerry
        11
    jerry  
       Nov 22, 2012
    @pityonline bitbucket 速度和 github 及 dropbox 差不多,但有私有仓库且没有 dropbox 折腾,如果太在乎速度就只能找国内的了,国内晓得 gitcafe 但私有仓库好像就免费到年底,或者买个国内 vps 搭建git server真的非常简单
    holystrike
        12
    holystrike  
       Nov 22, 2012
    私有可以 bitbucket
    界面稍差点的 gitorious.org
    还有支持svn和git,采用trac的 projectlocker

    速度方面的话,个人使用,本来就不会有单次大量代码提交,所以基本可以接受
    pityonline
        13
    pityonline  
    OP
       Nov 22, 2012
    @allenm
    @cabbala
    @CoX
    @holystrike

    谢谢,学习了。
    dafang
        14
    dafang  
       Nov 22, 2012
    我觉得还是老老实实付费比较靠谱。好的服务就需要支持。
    san3ye
        15
    san3ye  
       Nov 22, 2012
    个人用的话,直接将项目保存在dropbox下不就ok了?
    多人的话,不太靠谱。
    还是那句话,生命可贵,少花些时间在这些地方折腾。
    pityonline
        16
    pityonline  
    OP
       Nov 22, 2012
    @dafang 没错,不过对于一个新手来说,使用付费私有 repo 好像没多大必要。

    @san3ye 只是发现一种方法而已。
    sumanx
        17
    sumanx  
       Nov 22, 2012
    我也用过,但是不适合协作,自己用倒是还不错。
    推荐bitbucket
    qqblog
        18
    qqblog  
       Nov 22, 2012
    连接被重置
    anyforever
        19
    anyforever  
       Nov 23, 2012
    还不如在你的vps什么的地方开一个仓库方便。
    不过很多人还没有自用vps也是个现实问题
    Hysteria
        20
    Hysteria  
       Nov 23, 2012
    @pityonline 目前国内也有gitcafe了,私有仓库暂时免费,明年应该收费了,不过很便宜。
    heroicYang
        21
    heroicYang  
       Nov 23, 2012
    对于个人来说,我觉得很多项目放public repo也没问题啊。至于公司嘛,在自己的外网服务器上架一个gitlab呗!
    pityonline
        22
    pityonline  
    OP
       Nov 23, 2012
    @anyforever 不行啊,我 ssh 登录 vps 都要十秒或更长,等这台 vps 到期不打算续费了。

    @Hysteria GitCafe 我还没试过私有仓库,等会儿试试。

    @heroicYang 有不宜放 public repo 的项目,我已经说明过了。
    phuslu
        23
    phuslu  
       Jun 12, 2013
    bitbucket 持续被干扰, 我把自己在 bitbucket 上的项目都搞到 dropbox 上了。
    pityonline
        24
    pityonline  
    OP
       Jun 12, 2013 via Android
    @phuslu Good choice....
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   875 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 20:00 · PVG 04:00 · LAX 13:00 · JFK 16:00
    ♥ Do have faith in what you're doing.