2014-09-02 142 views
0

我知道这个话题已经很多次了,但我仍然无法理解我必须做的正确的事情,请原谅我的重复。Git,分支和合并。什么是正确的工作流程?

这里的情况是:

我发动了几天,所以我希望能够对代码工作,而不会干扰网络版网站。所以我使用git。

我在bitbucket上做了一个叫做MySite的回购。

此回购为两个分支。

从我推送代码到我的服务器的一个主人。 这个主分支具有.htaccess,sql访问,缩小JS等具体值...

一个地方,我也有具体的.htaccess,sql使它从我的本地主机工作。

我会专注于.htaccess更容易理解。我的本地.htaccess与我的主人完全不同。

这意味着,我永远不会合并本地到主,因为如果本地.htaccess获得prod它将下降服务器,如果prod .htaccess获取本地,我将无法访问本地主机。

我举个例子。假设我想在myScript.js上工作。

我在本地分支结账以访问未分类的版本。

我创建了一个新的分支我的Script_mods然后我签出这个分支。

我在myScript.js上工作,我将该文件提交到分支Script_mods。

(在这一步,我应该推动Script_mods分支到Bitbucket或不)?

然后我签出分支本地并与Script_mods合并。这是为了能够跟踪提交并能够在完成后删除Script_mods分支。

在这一点上都很好。

然后,我还想更改prod代码,以便签出Master并合并Script_mods。

问题在于这里,因为我与.htaccess文件有一些冲突。我不明白为什么,但我得到两种错误。

要么.htaccess不推动,但然后我得到一些未合并的错误。 修改了.htaccess,我需要重新编写它以使我的服务器再次工作。

所以长话短说,我觉得我完全缺少对工作流我应该使用,但不能看到这一步的东西...

我希望能够创建一个分支,只有具体的文件,我想工作,然后合并到本地和主这两个分支,但我不知道这甚至可能。所以我回到了对常规工作流程的误解。

感谢您的澄清...

+0

的可能重复[是否可以排除特定的提交做一个混帐合并是什么时候?](http://stackoverflow.com/questions/332528/is-it-possible-to-exclude-specific-commits-when-做-A-混帐合并) – Mateusz 2014-09-02 15:33:14

回答

0

从版本控制中排除这些文件,因为你不会经常改变的。你将不得不分开维护这些。使用gitignore或Git: Ignoring Version-Controlled Files

好了,所以答案就在这里: Is it possible to exclude specific commits when doing a git merge?

+0

所以没有从合并中排除文件的方式,除了完全从git的系统中排除? – pierreaurelemartin 2014-09-02 14:41:48

+0

如果你会问这样的谷歌在开始你会得到你的答案:)我已经更新答案与正确答案的链接。 – Mateusz 2014-09-02 15:31:56

+0

我发现这个职位放在没有得到它,并已经失去了我的东西......但是,你是完全正确的......我的坏。无论如何,我从新鲜和干净的基础开始,并将文件添加到.gitignore,现在,一切似乎按我的意愿工作。谢谢 ! – pierreaurelemartin 2014-09-02 15:39:25

0

这里是一个要工作的战略:

当改变.htaccess文件,然后确保你独自一人提交此变更(即提交其中只包含这个文件)。

当合并这样的承诺,始终做到从local分支(以确保一个错误,不会破坏你的服务器)。因此,工作流会是这样:

  1. 结帐master
  2. 合并一切local - >master分支没有.htaccess提交(即合并此人之前所有提交)。
  3. 切换到local
  4. 将合并策略ours中的主提交合并到本地。这主要是告诉混帐:“现在localmaster合并”,而无需修改任何文件。
  5. 结帐master
  6. 合并其余

另一种方法是不得不.htaccess文件(名称不同),并正确的复制到.htaccess在服务器的启动脚本。

另一个好主意是在服务器的启动脚本.htaccess某处添加一个测试,检查“本地”模式,以确保当错误的文件被激活,你很快就会注意到。

+0

不,我不想更改.htaccess,我想从合并中排除它。 – pierreaurelemartin 2014-09-02 14:41:07

+0

@pierreaurelemartin:这就是“我们”的合并策略。 – 2014-09-02 14:46:36