ฉันมีที่เก็บ Git ในพื้นที่ชื่อ 'Skeleton' ที่ฉันใช้สำหรับเก็บโครงกระดูกของโครงการ มีสาขาไม่กี่แห่งสำหรับโครงการประเภทต่างๆ:
casey@agave [~/Projects/skeleton] git branch
* master
rails
c
c++
ถ้าฉันต้องการตรวจสอบสาขาหลักสำหรับโครงการใหม่ฉันสามารถทำได้
casey@agave [~/Projects] git clone skeleton new
Initialized empty Git repository in /Users/casey/Projects/new/.git/
และทุกอย่างเป็นสิ่งที่ฉันต้องการ โดยเฉพาะอย่างยิ่งสาขาต้นแบบใหม่ชี้ไปที่สาขาโครงกระดูกหลักและฉันสามารถผลักและดึงเพื่อย้ายการเปลี่ยนแปลงไปยังการตั้งค่าโครงการพื้นฐาน
อย่างไรก็ตามสิ่งที่ใช้ไม่ได้คือถ้าฉันต้องการโคลนสาขาอื่น ฉันไม่สามารถรับได้ดังนั้นฉันจึงดึงเฉพาะสาขาที่ฉันต้องการเช่นrails
สาขาจากนั้นที่เก็บใหม่จะมีmaster
สาขาที่ผลักดันและดึงจากrails
สาขาที่เก็บโครงกระดูกตามค่าเริ่มต้น
มีวิธีที่ดีในการทำสิ่งนี้หรือไม่? หรือบางทีนี่อาจไม่ใช่วิธีที่ Git ต้องการให้ฉันจัดโครงสร้างสิ่งต่าง ๆ และฉันก็เปิดรับอย่างแน่นอน บางทีฉันควรจะมีที่เก็บหลายแห่งด้วยที่เก็บโครงกระดูก Ruby on Rails ที่ติดตามที่เก็บโครงกระดูกหลัก? และโครงการใด ๆ ก็ตามที่โคลนที่เก็บโครงกระดูก Ruby on Rails
git checkout -b newbranch origin/branchiwant
ทำงานได้ดีขึ้นหรือไม่ (ไม่มี--track
ตัวเลือก)
git branch -a
แสดง?