Git on Dropbox -- Git for fun! - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
pityonline
V2EX    git

Git on Dropbox -- Git for fun!

  •  
  •   pityonline 2012 年 11 月 22 日 8013 次点击
    这是一个创建于 4798 天前的主题,其中的信息可能已经有所发展或是发生改变。
    用过 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 条回复    1970-01-01 08:00:00 +08:00
    lldong
        1
    lldong  
       2012 年 11 月 22 日
    gist也可以当一个repo用,比如 git.io/mini
    chloerei
        2
    chloerei  
       2012 年 11 月 22 日
    想想就觉得很容易冲突。
    jerry
        3
    jerry  
       2012 年 11 月 22 日
    私有仓库可以用 bitbucket
    pityonline
        4
    pityonline  
    OP
       2012 年 11 月 22 日
    @lldong 当然可以,但如果有不宜公开的内容,放到 gist 上也不好吧?
    lldong
        5
    lldong  
       2012 年 11 月 22 日
    @pityonline gist也有private的
    pityonline
        6
    pityonline  
    OP
       2012 年 11 月 22 日
    @chloerei 的确很容易冲突啊,同时 commit 或同步问题都可能导致冲突,不过检查冲突倒也很容易。

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

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

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

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

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

    @heroicYang 有不宜放 public repo 的项目,我已经说明过了。
    phuslu
        23
    phuslu  
       2013 年 6 月 12 日
    bitbucket 持续被干扰, 我把自己在 bitbucket 上的项目都搞到 dropbox 上了。
    pityonline
        24
    pityonline  
    OP
       2013 年 6 月 12 日 via Android
    @phuslu Good choice....
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1063 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 18:01 PVG 02:01 LAX 10:01 JFK 13:01
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86