3
假設有多個分支,我想要一個文件層次結構,我可以在我的IDE中瀏覽該文件,以顯示與分支關聯的文件和文件夾。從git分支創建符號鏈接文件層次結構
可能有一些技巧和難題我必須弄清楚,例如,是否可以顯示已在分支中編輯過的文件,但排除其他分支的合併? [全部](符號鏈接到所有 -
(基於分支)
[分支]
[BRANCH2]
[店3]
'的根目錄結構文件在一個桶中)
` - [PATH \ SYMLINK](目錄路徑+符號鏈接)
` - [PATH \ SYMLINK]
注:
Git: How do I list only local branches?
git for-each-ref --format='%(refname:short)' refs/heads/
腳本進行
#!/bin/bash
BRANCHDIR='/path/to/where/symlinks/go'
MASTER='master'
CODEDIR='/path/to/sourcecode'
OLDPATH=`pwd`
BRANCHDIRS=`git for-each-ref --format='%(refname:short)' refs/heads/ | xargs echo`
for i in $BRANCHDIRS;
do
BRANCHFILES=`git diff --name-only $i $MASTER`
mkdir -p $BRANCHDIR/$i $BRANCHDIR/$i/all
for j in $BRANCHFILES;
do
mkdir -p $BRANCHDIR/$i/$(dirname $j)
ln -s $CODEDIR/$j $(basename $j) -t $BRANCHDIR/$i/$(dirname $j)
ln -s $CODEDIR/$j $(basename $j) -t $BRANCHDIR/$i/all/$(basename $j)
done
done
cd $OLDPATH
謝謝!這真的很酷。手動使用很有意義,效果很好。 – Justin
'git-new-workdir'已被'git-worktree'取代,請參閱:http://nuclearsquid.com/writings/git-new-workdir/ – Roberto