Skip to content

Commit 92a21d4

Browse files
committed
fix: add grey mark - will eventually need to apply if rebase exits
Signed-off-by: Kipras Melnikovas <[email protected]>
1 parent 53b776f commit 92a21d4

File tree

3 files changed

+16
-8
lines changed

3 files changed

+16
-8
lines changed

apply.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ const getPaths = (
109109
appliedPath: path.join(pathToStackedRebaseDirInsideDotGit, filenames.applied),
110110
} as const);
111111

112-
const markThatNeedsToApply = (
112+
export const markThatNeedsToApply = (
113113
pathToStackedRebaseDirInsideDotGit: string //
114114
): void =>
115115
[getPaths(pathToStackedRebaseDirInsideDotGit)].map(

filenames.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
*/
44
export const filenames = {
55
rewrittenList: "rewritten-list",
6+
willNeedToApply: "will-need-to-apply",
67
needsToApply: "needs-to-apply",
78
applied: "applied",
89
//

git-stacked-rebase.ts

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { bullets } from "nice-comment";
1111

1212
import { filenames } from "./filenames";
1313
import { configKeys } from "./configKeys";
14-
import { apply, applyIfNeedsToApply } from "./apply";
14+
import { apply, applyIfNeedsToApply, markThatNeedsToApply as _markThatNeedsToApply } from "./apply";
1515
import { forcePush } from "./forcePush";
1616
import { branchSequencer } from "./branchSequencer";
1717

@@ -284,6 +284,10 @@ export const gitStackedRebase = async (
284284
const pathToStackedRebaseDirInsideDotGit: string = parsed.pathToStackedRebaseDirInsideDotGit;
285285
const pathToStackedRebaseTodoFile: string = parsed.pathToStackedRebaseTodoFile;
286286

287+
if (fs.existsSync(path.join(pathToStackedRebaseDirInsideDotGit, filenames.willNeedToApply))) {
288+
_markThatNeedsToApply(pathToStackedRebaseDirInsideDotGit);
289+
}
290+
287291
if (options.apply) {
288292
return await apply({
289293
repo,
@@ -704,7 +708,7 @@ mv -f "${preparedRegularRebaseTodoFile}" "${pathToRegularRebaseTodoFile}"
704708
/**
705709
* will need to apply, unless proven otherwise
706710
*/
707-
markThatNeedsToApply();
711+
fs.writeFileSync(path.join(pathToStackedRebaseDirInsideDotGit, filenames.willNeedToApply), "");
708712

709713
/**
710714
* part 2 of "the different ways to launch git rebase"
@@ -780,11 +784,14 @@ mv -f "${preparedRegularRebaseTodoFile}" "${pathToRegularRebaseTodoFile}"
780784
});
781785
console.log("");
782786

783-
if (!rebaseChangedLocalHistory) {
784-
/**
785-
* TODO `unmarkThatNeedsToApply` (NOT the same as `markThatApplied`!)
786-
*/
787-
// unmarkThatNeedsToApply();
787+
fs.unlinkSync(path.join(pathToStackedRebaseDirInsideDotGit, filenames.willNeedToApply));
788+
if (rebaseChangedLocalHistory) {
789+
markThatNeedsToApply();
790+
} else {
791+
// /**
792+
// * TODO `unmarkThatNeedsToApply` (NOT the same as `markThatApplied`!)
793+
// */
794+
// // unmarkThatNeedsToApply();
788795
}
789796

790797
/**

0 commit comments

Comments
 (0)