V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
mozutaba
V2EX  ›  问与答

请教下关于多人网站开发的问题

  •  
  •   mozutaba · 2015-02-27 09:22:52 +08:00 · 3036 次点击
    这是一个创建于 3557 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我们有5个人,php写一个网站,有空间,但是mysql不能外部连接。
    2个人同时修改了服务器上的header.php文件,然后就只能被覆盖咯。怎样才能确保所有人的代码一致呢? 难道都要本地调试好再push到git,然后同步到ftp上才行嘛?

    还一个问题,sublime用了ftp的插件,但是每次同步都会把所有文件上传,而且本地删除的文件远程不会删除掉。请问大家平时是怎么一个流程呢?

    第 1 条附言  ·  2015-02-27 10:03:49 +08:00
    补充一下,是学校学kanban,虽然写代码是主要活动,但不是重点。
    要是有类似google doc那样多人协作的平台或者简单的工作流程我们就happy了。
    谢谢!
    22 条回复    2015-02-27 21:39:26 +08:00
    datou552211
        1
    datou552211  
       2015-02-27 09:27:46 +08:00 via iPhone
    上传之前pull 最好分配不同code任务
    ZackYang
        2
    ZackYang  
       2015-02-27 09:29:03 +08:00
    ftp管理源码, 醉了.
    qiayue
        3
    qiayue  
       2015-02-27 09:30:46 +08:00
    svn 就行了
    每个人机子本地装好环境,本地有一套代码
    每次要修改某个代码前先 update 把最新的代码同步过来
    本地调试好之后,再 commit
    最好是,线上有一个生产环境,一个测试环境
    commit 的代码设置好 hook ,直接就能够 update 到线上测试环境,在线上测试环境测试好再次确认没问题之后,再在生产环境 update
    mozutaba
        4
    mozutaba  
    OP
       2015-02-27 09:33:57 +08:00
    @datou552211 那php都是本地调先?数据库怎么办。
    @ZackYang 别笑了,还有2个不知道什么是ftp的呢。
    feelapi
        5
    feelapi  
       2015-02-27 09:36:37 +08:00
    还是先培训好吧,要不然损失大了。
    mozutaba
        6
    mozutaba  
    OP
       2015-02-27 09:36:42 +08:00
    @qiayue 学校要我们学kanban,任务都很碎,这样的过程比较麻烦啊。特别是数据库不能外连。
    datou552211
        7
    datou552211  
       2015-02-27 09:37:31 +08:00 via iPhone
    @mozutaba 开发就弄个本地数据库,还在生产服务器上用啊
    neutrino
        8
    neutrino  
       2015-02-27 09:37:38 +08:00   ❤️ 1
    偷懒的话就在服务器上git,保证master就是production,dev是开发,自己在自己的分支里,merge到dev后review最后merge到master
    mgc
        9
    mgc  
       2015-02-27 09:39:37 +08:00
    @mozutaba 你们公司是招的那种12K的大叔么
    mozutaba
        10
    mozutaba  
    OP
       2015-02-27 09:42:52 +08:00
    @mgc 学校哦。。。这个web水平哪有公司要。还不让选后端,写css简直要我死。
    lzxgh621
        11
    lzxgh621  
       2015-02-27 09:45:51 +08:00   ❤️ 1
    本地假设个svn控制呗
    不过 连ftp都不知道的话 敢问怎么写代码的。。。 = =
    还是先学习好吧
    这种情况要养成勤备份的习惯
    否则 会哭死的
    mozutaba
        12
    mozutaba  
    OP
       2015-02-27 09:47:32 +08:00
    @neutrino 我是打算服务器上直接抓github上的代码过来。就是教其他2个人用git和装个本地环境我要死,有更简便的方法就好了,类似google doc那样多人编辑的。
    qiayue
        13
    qiayue  
       2015-02-27 09:51:45 +08:00
    本地环境当然就包括 PHP Apache MySQL 等等全套啊
    msg7086
        14
    msg7086  
       2015-02-27 10:04:10 +08:00   ❤️ 1
    @mozutaba 如果要作死着玩的话呢,
    用ftp上传文件,但是,本地一定要用git来管理。
    至少你自己会用git,保证自己手里有一份完整版。
    只能这样了。
    clino
        15
    clino  
       2015-02-27 10:14:58 +08:00   ❤️ 1
    建议用git分开发和稳定两类分支,稳定分支和生产环境的版本可以关联,稳定分支的维护可以由少数人,开发分支则可以由所有人来提交
    Tink
        16
    Tink  
       2015-02-27 10:17:15 +08:00   ❤️ 1
    最好弄个版本控制,虽然你们人少
    mozutaba
        17
    mozutaba  
    OP
       2015-02-27 10:29:09 +08:00
    @lzxgh621
    @qiayue
    为什么都用svn?
    xinyewdz
        18
    xinyewdz  
       2015-02-27 10:37:10 +08:00
    用git管理源代码,本地搭建一个开发环境(包括apache,数据库)共用。在本地调试好后,把代码部署到服务器上面(从git把代码拷贝到服务器目录)。
    SharkIng
        19
    SharkIng  
       2015-02-27 10:55:27 +08:00   ❤️ 1
    永远不用用服务器,尤其是生产服务器来做测试
    我们现在的做法就是 Git Push,本地测试,完成一个全套版本(或者至少部分版本)之后再去Development Server测试,最后完全没有Bugs了再FTP到Production Server上
    oott123
        20
    oott123  
       2015-02-27 12:43:53 +08:00
    kanban 是什么?
    jarlyyn
        21
    jarlyyn  
       2015-02-27 13:59:50 +08:00   ❤️ 1
    用的是空间吧?git svn都退散吧。
    就算用版本控制,同时操作同一个文件也和很蛋疼。

    你们要做的是一个人负责分配,其他人都写独立的文件,然后在 header.php里require进去
    imink
        22
    imink  
       2015-02-27 21:39:26 +08:00
    大多数提出的是git版本控制,如果不考虑数据库同步,有个更简单的方法,利用dropbox建立共享文件夹,dropbox的文件版本控制做的也挺不错。 你可以去google看。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2662 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 04:20 · PVG 12:20 · LAX 20:20 · JFK 23:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.