Skip to content

Commit b505127

Browse files
authored
Merge pull request #17 from implausible/feature/before-merge-callback-for-feature-too
I messed up
2 parents 5e50285 + 31ca24b commit b505127

File tree

3 files changed

+19
-11
lines changed

3 files changed

+19
-11
lines changed

src/Feature.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ class Feature {
7474
keepBranch,
7575
isRebase,
7676
preRebaseCallback = () => {},
77+
beforeMergeCallback = () => {},
7778
processMergeMessageCallback,
7879
postMergeCallback = () => {},
7980
beforeRebaseFinishCallback = () => {}
@@ -121,7 +122,8 @@ class Feature {
121122
cancelDevelopMerge = isSameCommit || isRebase;
122123

123124
if (!cancelDevelopMerge) {
124-
return utils.Repo.merge(developBranch, featureBranch, repo, processMergeMessageCallback)
125+
return Promise.resolve(beforeMergeCallback(developBranchName, featureBranchName))
126+
.then(() => utils.Repo.merge(developBranch, featureBranch, repo, processMergeMessageCallback))
125127
.then(utils.InjectIntermediateCallback(postMergeCallback));
126128
} else if (isRebase && !isSameCommit) {
127129
return Promise.resolve(preRebaseCallback(developBranchName, featureBranchName))

src/Hotfix.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,9 @@ class Hotfix {
8080
return Promise.reject(new Error('Hotfix name is required'));
8181
}
8282

83+
let developBranchName;
84+
let hotfixBranchName;
85+
let masterBranchName;
8386
let cancelMasterMerge;
8487
let cancelDevelopMerge;
8588
let developBranch;
@@ -92,9 +95,9 @@ class Hotfix {
9295
let versionPrefix;
9396
return Config.getConfig(repo)
9497
.then((config) => {
95-
const developBranchName = config['gitflow.branch.develop'];
96-
const hotfixBranchName = config['gitflow.prefix.hotfix'] + hotfixVersion;
97-
const masterBranchName = config['gitflow.branch.master'];
98+
developBranchName = config['gitflow.branch.develop'];
99+
hotfixBranchName = config['gitflow.prefix.hotfix'] + hotfixVersion;
100+
masterBranchName = config['gitflow.branch.master'];
98101
versionPrefix = config['gitflow.prefix.versiontag'];
99102

100103
// Get the develop, master, and hotfix branch
@@ -123,7 +126,7 @@ class Hotfix {
123126

124127
// Merge hotfix into develop
125128
if (!cancelDevelopMerge) {
126-
return Promise.resolve(beforeMergeCallback(developBranch, hotfixBranch))
129+
return Promise.resolve(beforeMergeCallback(developBranchName, hotfixBranchName))
127130
.then(() => utils.Repo.merge(developBranch, hotfixBranch, repo, processMergeMessageCallback))
128131
.then(utils.InjectIntermediateCallback(postDevelopMergeCallback));
129132
}
@@ -135,7 +138,7 @@ class Hotfix {
135138
const tagName = versionPrefix + hotfixVersion;
136139
// Merge the hotfix branch into master
137140
if (!cancelMasterMerge) {
138-
return Promise.resolve(beforeMergeCallback(masterBranch, hotfixBranch))
141+
return Promise.resolve(beforeMergeCallback(masterBranchName, hotfixBranchName))
139142
.then(() => utils.Repo.merge(masterBranch, hotfixBranch, repo, processMergeMessageCallback))
140143
.then(utils.InjectIntermediateCallback(postMasterMergeCallback))
141144
.then((oid) => utils.Tag.create(oid, tagName, message, repo));

src/Release.js

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ class Release {
8787
return Promise.reject(new Error('Release name is required'));
8888
}
8989

90+
let developBranchName;
91+
let releaseBranchName;
92+
let masterBranchName;
9093
let developBranch;
9194
let releaseBranch;
9295
let masterBranch;
@@ -99,9 +102,9 @@ class Release {
99102
let versionPrefix;
100103
return Config.getConfig(repo)
101104
.then((config) => {
102-
const developBranchName = config['gitflow.branch.develop'];
103-
const releaseBranchName = config['gitflow.prefix.release'] + releaseVersion;
104-
const masterBranchName = config['gitflow.branch.master'];
105+
developBranchName = config['gitflow.branch.develop'];
106+
releaseBranchName = config['gitflow.prefix.release'] + releaseVersion;
107+
masterBranchName = config['gitflow.branch.master'];
105108
versionPrefix = config['gitflow.prefix.versiontag'];
106109

107110
// Get the develop, master, and release branch
@@ -130,7 +133,7 @@ class Release {
130133

131134
// Merge release into develop
132135
if (!cancelDevelopMerge) {
133-
return Promise.resolve(beforeMergeCallback(developBranch, releaseBranch))
136+
return Promise.resolve(beforeMergeCallback(developBranchName, releaseBranchName))
134137
.then(() => utils.Repo.merge(developBranch, releaseBranch, repo, processMergeMessageCallback))
135138
.then(utils.InjectIntermediateCallback(postDevelopMergeCallback));
136139
}
@@ -142,7 +145,7 @@ class Release {
142145
const tagName = versionPrefix + releaseVersion;
143146
// Merge the release branch into master
144147
if (!cancelMasterMerge) {
145-
return Promise.resolve(beforeMergeCallback(masterBranch, releaseBranch))
148+
return Promise.resolve(beforeMergeCallback(masterBranchName, releaseBranchName))
146149
.then(() => utils.Repo.merge(masterBranch, releaseBranch, repo, processMergeMessageCallback))
147150
.then(utils.InjectIntermediateCallback(postMasterMergeCallback))
148151
.then((oid) => utils.Tag.create(oid, tagName, message, repo));

0 commit comments

Comments
 (0)