Version control 如何在Mac上设置(GUI)本地版本控制系统?

Version control 如何在Mac上设置(GUI)本地版本控制系统?,version-control,Version Control,我是一名网络开发者。我的公司有一个我们所有人都直接使用的开发服务器。我们只有3个人,都在不同的项目上工作,所以没有人会覆盖彼此的工作。因为我们太小了,没有人设置过任何版本控制,我也不能为我们所有人坚持这样做。然而,我最近破坏了我自己的一些代码,无法让它再次工作,这使我想建立某种版本控制 以下是我希望它的工作方式: 制作dev服务器上存在的项目的本地副本 在dev服务器上进行更改 每次重大更改后,请提交我的本地副本 如果新的更改破坏了dev服务器上的代码,则可以从本地副本获取以前的版本 因为我经常

我是一名网络开发者。我的公司有一个我们所有人都直接使用的开发服务器。我们只有3个人,都在不同的项目上工作,所以没有人会覆盖彼此的工作。因为我们太小了,没有人设置过任何版本控制,我也不能为我们所有人坚持这样做。然而,我最近破坏了我自己的一些代码,无法让它再次工作,这使我想建立某种版本控制

以下是我希望它的工作方式:

  • 制作dev服务器上存在的项目的本地副本
  • 在dev服务器上进行更改
  • 每次重大更改后,请提交我的本地副本
  • 如果新的更改破坏了dev服务器上的代码,则可以从本地副本获取以前的版本
  • 因为我经常一次处理6个或更多的文件,所以在进行任何更改之前手动创建每个文件的备份是不可行的

    我已经看过GitBox和版本,但无法判断它们是否允许我制作未使用某种版本控制的远程项目的本地副本


    有没有人建议为Mac开发一个好的GUI版本控制系统,让我完成上面概述的任务?(主要问题是步骤#1-制作尚未使用版本控制系统的项目的本地副本,并能够通过单个操作更新本地副本。)

    IMHO:2个人就足以证明团队的源代码控制是合理的。如果其他人不愿意,那么下一个最好的办法就是掩盖你的背后

    在您喜欢的任何系统中设置本地存储库。然后从远程服务器复制应用程序并将其添加到版本控制。由于其他人可能会在您不知情的情况下进行更改,因此您应该通过比较本地副本和开发副本来启动每个编辑会话

    您可能需要查看
    rcp
    ,以便根据开发副本维护本地副本


    保留两个本地副本可能会有所帮助,一个是您正在处理的副本,另一个是用于合并开发副本中的更改的副本。只需将本地开发人员副本中的文件改写为用于开发的文件即可。然后根据需要将它们签入或合并。这将允许您在不破坏您自己的工作副本的情况下,将开发中的更改与您的回购进行完整的比较。

    如果我处于您的情况(并且无法在服务器上设置版本控制系统),我会将您建议的方法更改为类似以下内容:

    注意:我知道您询问的是GUI,但我也将在这里输入您可以在终端中使用的命令。这其实很容易做到。只需几分钟的练习和一份备忘单,你可能会发现这样做更容易/更快。我还假设您的devweb服务器是linux/unix类型,并且您可以用类似的方式设置mac-to-server网页。通过内置的web共享功能或类似功能

  • 在我的Mac上创建一个空的本地工作目录,用于进行开发工作

  • 使用以下命令从本地工作目录中的终端应用程序初始化git存储库:

    git init
    
    git add .
    git commit -m "Put a commit message here"
    
  • 将所有代码从dev服务器下拉到本地工作目录。我将使用终端的rsync命令来完成这项工作。如果将dev服务器作为驱动器安装在mac上,则命令如下:

    rsync -a /Volumes/{DriveName}/{path}/{to}/{project-folder} /Users/{yourUserName}/projects/{project-folder}
    
    如果驱动器没有安装,您可能仍然可以使用rsync。只是需要一个不同的设置。如果你需要的话,还有其他资源可以帮助你。当然,您也可以使用您计划在工作流中传输文件的任何其他方式

    更直接地指出你的问题,我不知道git或其他版本控制软件能够从不是另一个存储库的远程位置提取文件。我想你必须用别的方法来完成这一步

  • 将所有文件添加到git,以便它知道如何跟踪它们,然后使用以下工具将它们提交到存储库中:

    git init
    
    git add .
    git commit -m "Put a commit message here"
    
  • 使用内置的Mac Web共享或类似MAMP的内容查看更改,对Mac上的文件而不是开发服务器上的文件进行所需的任何更改

  • 添加所有更改并使用相同的两个命令再次提交:

    git add . 
    git commit -m "A new message about what changed"
    
  • 重复第5步和第6步,直到您有了要发送回dev服务器进行更深入测试的内容

  • 将代码推送到dev服务器。然后返回到步骤5,继续进行更改和提交,直到您准备好再次推回到dev

  • 这种方法的好处:

    • 在本地处理版本控制要比每次复制文件然后再复制版本容易得多。这样做需要额外的步骤,这意味着更可能会发生错误,或者你不会像你应该做的那样多

    • 它应该比在dev服务器上工作更快

    • 即使未连接到dev服务器,也可以工作。(如果您的机器是某种类型的macbook,您可以在任何地方工作。)

    • 您不太可能让dev服务器处于代码无法工作的状态

    • 没有人会看到您的代码,除非它处于您准备好让他们看到的状态

    此工作流提供基本版本控制,允许您简单地回滚到以前的版本。你可以通过分支、标记等做更多的事情。。。但我所列出的内容将让您从基本知识开始,并在您做出承诺时尽可能多地介绍您。在GUI方面,您提到了GitBox。我以前使用过它,也喜欢它,但我发现在命令行上使用命令更容易、更快<