这是我第一次与其他开发人员一起开发项目(目前只有两个)。我们的想法是使用FileZilla等FTP/SFTP软件直接从服务器编辑文件。我们希望任何打开进行编辑的文件都被阻止,这样其他用户就不能同时编辑它。这可能吗?如果不是使用FileZilla,也许是使用其他软件?我看过Git、Codiad和其他类似的解决方案,但它们太复杂了(在GitHub中合并并发版本并非易事)或有错误(Codiad没有保存文件)。我们认为文件锁定很原始,但对我们来说已经足够好了(我们在同一个房间里)。问题是:我们如何实施它?
不要走那条路
首先,只有一个代码副本是有风险的,如果直接在服务器上编辑文件,就会发生这种情况
其次,我真的不明白为什么人们认为git
是一种过度杀戮
对于小团队和没有实际交付渠道的情况,您不需要掌握整个git
能力。您甚至不必处理分支和合并。
开始使用git
只需:git clone URL_OF_REPOSITORY
-下载存储库的副本并开始使用它git add PATH_TO_EDITED_FILE_OR_FOLDER
-将文件或/和文件夹标记为暂存提交git commit -m 'DESCRIPTION OF CHANGES'
-提交/接受上一步中标记的文件和文件夹中的更改,并在本地保存有关这些更改的信息git push
-将提交的更改上载到远程存储库git pull
-从远程存储库下载他人提交和推送的更改
正如您所看到的,命令不希望您提供任何复杂的信息。只是远程repo的url、您认为可以与他人共享的文件以及所做更改的所需描述。这并不难,真的。人们应该真正开始熟悉版本控制系统,因为这是当今软件开发的核心技能之一。
如果你是机器的所有者,你可以为团队安装Koding(最多4个免费),并在协作模式下使用webide。
创建一个小团队loking是可以的(它不应该用于大型项目),但你应该研究git,我发现如果你们同时处理相同的代码,它只会变得一团糟。为了消除一些复杂性,请查看Git GUI,我使用的是源树,但还有很多其他的,它们只是帮助您可视化正在做的事情和正在发生的变化。
现在回答你的问题,我不知道有任何独立的软件可以做你想要的事情,但dreamweaver确实有一种自己锁定文件的方法。这是通过创建一个名为filename.lock
的文件来完成的,这是一个文本文件,其中包含锁定者的详细信息。您可以手动执行类似操作,因此当您想锁定文件时,您可以创建锁定文件,然后要解锁它,您可以删除它,并且双方都提示不要编辑有锁定文件的文件。
这不是最好的解决方案,也不是最难的,但取决于你的工作方式,它可能会起作用。
- FTP中没有文件锁定
- SFTP中有锁定,但通常不支持,有关详细信息,请参阅SFTP文件锁定机制
- WebDAV中有锁定,但像mod_dav这样的常见实现实际上锁定了WebDAV内的文件;世界;只是,实际的基础文件没有以任何方式锁定
因此,我不知道有任何通用的远程锁定文件的机制。