[英]Retrieving Git patch for all commits of all branches of a remote repository
[英]Convert all commits in a git repository to branches named sequentially?
我試圖找出一個巨大的代碼庫。
通常我跑
git log
然后,我為每個提交創建一個分支,並依次調查每個提交。 有沒有一種方法可以為每個提交創建一個分支並按順序命名它們,例如01、02 ... etc。
這個bash腳本可以解決問題,為每個提交創建一個從B1開始的名為B n的分支。 我假設您不想執行整個回購交易,但需要執行A..B范圍(不包括A,包括B),我在此處將其任意設置為HEAD〜10..HEAD。
A=HEAD~10
B=HEAD
counter=0
for commit in `git rev-list --reverse $A..$B`; do
counter=$((counter + 1))
git branch B$counter $commit
done
注意使用--reverse
:如果沒有它,此循環會將分支B1分配給最新提交; 使用它,循環將B1分配給最早的提交。
現在,如果要標記當前分支中的所有提交,請將for
行替換for
:
for commit in `git rev-list --reverse`; do
如果要標記所有提交的回購協議,在每一個分支,使用for
線:
for commit in `git rev-list --reverse --all`; do
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.