如何将新项目与现有的Gitlab存储库进行比较

时间:2019-02-11 17:51:38

标签: git gitlab

我有一个基于CMS的项目,通过直接更新测试站点(复制文件),然后在测试后将这些文件复制到生产站点来保持同步。这很笨拙,容易出错。因此,我添加了一个Gitlab存储库,以便可以更有效地维护站点。我将生产文件复制到仓库中,然后将仓库克隆到我的开发机器上。现在,我正在跟踪并确认从开发机器到Gitlab存储库的更改。

我的问题是,我现在希望能够使用git从Gitlab存储库中将更改引入测试和生产环境。但是我不知道如何在不从仓库的“克隆”开始的情况下,让那些环境“意识到” Gitlab仓库的变化。我只想将git控件添加到每个环境中,然后开始提取并合并这些更改。

有没有一种方法可以在没有克隆的情况下初始化每个环境,从而可以从存储库中获取更改?

我使用git init命令将git添加到测试环境(远程服务器)中,以创建一个空的本地存储库,然后设置源和从存储库中提取。但是我不确定这是正确的步骤。如果是这样,我该如何确定与“拉”和本地文件有何不同?那就是我被困住的地方。

我的希望是,我可以比较本地文件与从存储库中提取的文件之间的差异,然后合并一些我知道不同的文件。然后,我需要做的就是每次将开发变更推送到存储库时都进行变更。现在我的困惑是如何比较和同步更改,因为没有克隆可以设置文件的基准。

1 个答案:

答案 0 :(得分:0)

您可以使用cli或任何git-ui-tool来管理您的存储库。 基本上,了解git-workflow是一件好事:https://de.atlassian.com/git/tutorials/comparing-workflows 与分支合作。签出一个新的分支机构进行开发,并使用好名字,例如“功能/ my_awesome_development”。 完成工作后,将其与master合并,然后将master推送到gitlab。删除“ feature / my_awesome_development”,因为它已完成。您的下一个分支可以是'fix / my_awesome_development_didnt_work';)

我建议再开设一个分支,称为“生产”。仅在生产环境中的服务器上签出此文件。 现在,您要做的就是进入源代码目录,即git-branch'production'并从命令行中通过'git pull origin master'从master中进行提取。 gitlab-master源将被拉到您的工作分支中。