ฉันต้องการลองคำตอบที่รวมถึง git-flow และ 'points' หรือ use-cases สามรายการพื้นที่เก็บข้อมูลส่วนกลาง git การพัฒนาในท้องถิ่นและเครื่องผลิต นี้ไม่ได้รับการทดสอบอย่างดี
ฉันกำลังให้คำสั่งที่เฉพาะเจาะจงอย่างไม่น่าเชื่อ แทนที่จะพูดว่าฉันจะบอก<your folder>
สถานที่เดียวที่ฉันกำลังเปลี่ยนแปลงคำสั่งเดิมจะเปลี่ยนชื่อเซิร์ฟเวอร์เฉพาะของฉันด้วย/root/git
example.com
ฉันจะอธิบายวัตถุประสงค์ของโฟลเดอร์เพื่อให้คุณสามารถปรับได้ตามต้องการ โปรดแจ้งให้เราทราบถึงความสับสนใด ๆ และฉันจะอัปเดตคำตอบ
เวอร์ชัน git บนเซิร์ฟเวอร์คือ 1.7.1 เซิร์ฟเวอร์คือ CentOS 6.3 (สุดท้าย)
เวอร์ชัน git บนเครื่องพัฒนาคือ 1.8.1.1 นี่คือ Mac OS X 10.8.4
ที่เก็บส่วนกลางและเครื่องผลิตอยู่ในเครื่องเดียวกัน
พื้นที่เก็บข้อมูลส่วนกลางซึ่งผู้ใช้ svn สามารถเกี่ยวข้องกับเป็น 'เซิร์ฟเวอร์' มีการกำหนดค่าดังต่อไปนี้ ฉันมีโฟลเดอร์/root/git
ที่ฉันเก็บที่เก็บคอมไพล์ของฉันทั้งหมด ฉันต้องการสร้างพื้นที่เก็บข้อมูลคอมไพล์สำหรับโครงการที่ฉันเรียกว่า "ดอกไม้"
cd /root/git
git clone --bare flowers flowers.git
คำสั่ง git ให้สองข้อความ:
Initialized empty Git repository in /root/git/flowers.git/
warning: You appear to have cloned an empty repository.
ไม่มีอะไรต้องกังวล.
บนเครื่องพัฒนามีการกำหนดค่าดังต่อไปนี้ ฉันมีโฟลเดอร์/home/kinjal/Sites
ที่ใส่โครงการทั้งหมดของฉัน ตอนนี้ฉันต้องการรับพื้นที่เก็บข้อมูล git กลาง
cd /home/kinjal/Sites
git clone root@example.net:/root/git/flowers.git
นี่ทำให้ฉันถึงจุดที่ฉันสามารถเริ่มเพิ่มสิ่งต่าง ๆ ลงไป ฉันตั้งค่า flow git ก่อน
git flow init -d
develop
โดยค่าเริ่มต้นนี้อยู่บนกิ่งไม้ ฉันเพิ่มรหัสของฉันที่นี่ตอนนี้ จากนั้นฉันต้องส่งไปยังที่เก็บ git ส่วนกลาง
git add .
git commit -am 'initial'
git push
เมื่อมาถึงจุดนี้มันผลักไปที่สาขาพัฒนา ฉันต้องการเพิ่มสิ่งนี้ในสาขาหลักด้วย
git flow release start v0.0.0 develop
git flow release finish v0.0.0
git push
โปรดทราบว่าฉันไม่ได้ทำอะไรระหว่างการเริ่มต้นการปล่อยและการสิ้นสุดการวางจำหน่าย และเมื่อฉันปล่อยรุ่นเสร็จฉันได้รับแจ้งให้แก้ไขสองไฟล์ สิ่งนี้ผลักดันให้สาขาที่กำลังพัฒนาอยู่เป็นผู้เชี่ยวชาญ
บนไซต์การผลิตซึ่งอยู่บนเครื่องเดียวกับที่เก็บ git ส่วนกลางของฉันฉันต้องการวางที่เก็บ/var/www/vhosts/example.net
ไว้ /var/www/vhosts
ผมมีอยู่แล้ว
cd /var/www/vhosts
git clone file:///root/git/flowers.git example.net
หากเครื่องที่ผลิตจะอยู่ในเครื่องที่แตกต่างกันgit clone
คำสั่งจะมีลักษณะเหมือนกับที่ใช้กับเครื่องพัฒนา
git clone --bare
จะทำในสิ่งที่คุณคิดว่ามันจะทำ