我正在與Maven一起開發Java項目,我需要經常部署到兩個不同的weblogic環境。這兩個部署之間的唯一區別是這兩個文件中的一系列更改:pom.xml
和weblogic.xml
文件。其餘的文件是相同的。Git:使用99%的類似代碼維護2個分支
我們正在爲此創建2個GIT分支:dev
& parallel-dev
。
但是我們在維護和合並這兩個分支之間的變化時遇到了許多問題。
所有的改變都在parallel-dev
分支完成,一旦這個代碼被審查和批准,我們將它合併到dev
分支,除了那些不需要合併的兩個文件(除非pom版本被修改 - 在這種情況下,我們需要合併版本更改,但不包括pom.xml中的其他更改)。這有點凌亂。
我認爲這種方法很混亂,可以改進,但不能真正看到如何。我很樂意爲這個過程保留一個分支,並避免我們面臨的所有瘋狂合併。
任何意見將不勝感激。
- 編輯 -
在pom.xml所不同的是隻爲平行-dev的分支不同的輪廓:
<profiles>
<profile>
<id>parallel-dev</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/test/resources</directory>
<filtering>true</filtering>
<includes>
<include>env.properties</include>
<include>more.properties</include>
...
</includes>
</resource>
</resources>
<testResources>
<testResource>
<directory>src/test/resources</directory>
<filtering>true</filtering>
<excludes>
<exclude>env.properties</exclude>
<exclude>more.properties</exclude>
...
</excludes>
</testResource>
</testResources>
</build>
</profile>
在weblogic.xml
差在上下文根名稱和庫引用(該lib還具有parallel-dev和dev分支)。
也許申報的.gitignore文件,以便它們不會COMMITED – Lino
@Lino 'pom.xml'?沒有!這100%需要承諾。 – Seelenvirtuose
你可以保持pom.xml和weblogic.xml分開嗎 - 並且只有一個分支用於剩下的代碼? – notyou