fix: cc-resolve がマージコミットを作るよう修正
--no-commit --no-ff を使ってマージ状態を常に保持し、 最終的な git commit が必ずマージコミット(親2つ)になるようにする。 また MERGE_HEAD チェックと git reset 禁止を追加し、 Claude がマージ状態をリセットしてしまうケースを防ぐ。
This commit is contained in:
parent
8430948475
commit
1b1f758c56
11
.github/workflows/cc-resolve.yml
vendored
11
.github/workflows/cc-resolve.yml
vendored
@ -57,7 +57,9 @@ jobs:
|
|||||||
id: merge
|
id: merge
|
||||||
run: |
|
run: |
|
||||||
git fetch origin main
|
git fetch origin main
|
||||||
if git merge origin/main --no-edit 2>/dev/null; then
|
# --no-commit --no-ff: コンフリクトの有無にかかわらず常にマージ状態を保持する
|
||||||
|
# これにより最後の git commit が必ずマージコミット(親2つ)を作る
|
||||||
|
if git merge --no-commit --no-ff origin/main 2>/dev/null; then
|
||||||
echo "conflicts=false" >> "$GITHUB_OUTPUT"
|
echo "conflicts=false" >> "$GITHUB_OUTPUT"
|
||||||
else
|
else
|
||||||
echo "conflicts=true" >> "$GITHUB_OUTPUT"
|
echo "conflicts=true" >> "$GITHUB_OUTPUT"
|
||||||
@ -224,6 +226,8 @@ jobs:
|
|||||||
- 「とりあえず片方」で全ファイルを一括解決しない
|
- 「とりあえず片方」で全ファイルを一括解決しない
|
||||||
- コンフリクトマーカー (`<<<<<<<`) が残ったままにしない
|
- コンフリクトマーカー (`<<<<<<<`) が残ったままにしない
|
||||||
- `git merge --abort` を実行しない
|
- `git merge --abort` を実行しない
|
||||||
|
- `git reset` を実行しない(MERGE_HEAD が消えてマージコミットが作れなくなる)
|
||||||
|
- `.git/MERGE_HEAD` を保持したまま作業すること
|
||||||
PROMPT
|
PROMPT
|
||||||
)" --verbose
|
)" --verbose
|
||||||
env:
|
env:
|
||||||
@ -233,7 +237,10 @@ jobs:
|
|||||||
- name: Commit and push
|
- name: Commit and push
|
||||||
run: |
|
run: |
|
||||||
git add -A
|
git add -A
|
||||||
if ! git diff --cached --quiet; then
|
# MERGE_HEAD があればマージコミット、なければ通常コミット
|
||||||
|
if [ -f .git/MERGE_HEAD ]; then
|
||||||
|
git commit -m "merge: integrate main into PR branch"
|
||||||
|
elif ! git diff --cached --quiet; then
|
||||||
git commit -m "fix: resolve merge conflicts"
|
git commit -m "fix: resolve merge conflicts"
|
||||||
fi
|
fi
|
||||||
AHEAD=$(git rev-list --count origin/${{ steps.pr.outputs.branch }}..HEAD 2>/dev/null || echo "0")
|
AHEAD=$(git rev-list --count origin/${{ steps.pr.outputs.branch }}..HEAD 2>/dev/null || echo "0")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user