Attached is the script I use to keep a tree synced with upstream tree. .git/origin points to upstream repo like the following. master.kernel.org /pub/scm/linux/kernel/git/jgarzik/libata-dev.git ssh If you have ssh access to the origin, specify ssh as above, everything will go over a ssh channel. If you don't, you need rsync and git access to the machine. The script keeps the tree heads identical to the upstream tree so don't create custom branches in the tree. They'll go away when you run git-sync.sh the next time. I have ~/os/linux-2.6 and ~/os/ata/work/libata-dev trees to track upstream and ~/os/work and ~/os/ata/work trees where I work on and fetches / pulls necessary heads from the two upstream clones. If you make your work trees' alternates files to point to the upstream clones, having separate upstream and work trees don't waste much space and it's easy to check what's going on upstream that way. -- tejun
Attachment:
git-sync.sh
Description: application/shellscript