我不小心设置了错误的时间,并且我的所有提交的时间/日期都是错误的,我想更改提交时间/日期(fe+8小时/+10天)。
我已经找到了一次提交的解决方案,但我想知道是否可以在一个分支中对多次提交进行解决。我已经设法弄清楚如何更改日期,但我迷失了变基:
COMMITS=($(git rev-list $COM~..HEAD))
for COMMIT in "${COMMITS[@]}"
do
COMMIT_DATE=$(git log $COMMIT -n1 --format=%aD)
NEW_DATE=$(date -d "$COMMIT_DATE+30 days" -R)
echo "I: $COMMIT FROM $COMMIT_DATE TO $NEW_DATE"
GIT_COMMITTER_DATE="$NEW_DATE" GIT_AUTHOR_DATE="$NEW_DATE" git commit --amend --no-edit --date "NEW_DATE"
...... rebase command
done
Run Code Online (Sandbox Code Playgroud)
如何正确变基?
感谢Joe的提示,我能够准确地写出我想要的内容,因此我将其发布在这里供其他观众使用。
git filter-branch --env-filter '
COMMIT_DATE=$(git log $GIT_COMMIT -n1 --format=%aD);
NEW_DATE=$(date -d "$COMMIT_DATE+1 day" -R);
GIT_COMMITTER_DATE="$NEW_DATE"
export GIT_COMMITTER_DATE
GIT_AUTHOR_DATE="$NEW_DATE"
export GIT_AUTHOR_DATE
' SHA..HEAD
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1435 次 |
| 最近记录: |