คำถามติดแท็ก git-bare

17
วิธีการแปลงที่เก็บ Git ปกติเป็นที่โล่ง?
ฉันจะแปลงพื้นที่เก็บข้อมูล Git 'ปกติ' เป็นพื้นที่ว่างเปล่าได้อย่างไร ความแตกต่างที่สำคัญน่าจะเป็น: ในพื้นที่เก็บข้อมูล Git ปกติคุณมี.gitโฟลเดอร์ในพื้นที่เก็บข้อมูลที่มีข้อมูลที่เกี่ยวข้องทั้งหมดและไฟล์อื่น ๆ ทั้งหมดที่ประกอบขึ้นเป็นสำเนาการทำงานของคุณ ในพื้นที่เก็บข้อมูล Git เปลือยไม่มีสำเนาทำงานและโฟลเดอร์ (ลองเรียกมันว่าrepo.git) มีข้อมูลที่เก็บจริง

11
อะไร - ปฏิบัติจริง - ความแตกต่างระหว่างพื้นที่เก็บข้อมูลเปลือยและที่ไม่ใช่เปลือย?
ฉันได้อ่านเกี่ยวกับ repositores ที่เป็นค่าเริ่มต้นและไม่เปลือยใน Git แล้ว ฉันไม่สามารถเข้าใจได้ค่อนข้างดี (ในทางทฤษฎี) เกี่ยวกับความแตกต่างระหว่างพวกเขาและทำไมฉันควร "ดัน" ไปยังที่เก็บเปลือย นี่คือข้อตกลง: ขณะนี้ฉันเป็นคนเดียวที่ทำงานในโครงการบนคอมพิวเตอร์ 3 เครื่องที่แตกต่างกัน แต่จะมีคนเข้ามาเกี่ยวข้องมากกว่านี้ในภายหลังดังนั้นฉันจึงใช้ Git สำหรับการควบคุมเวอร์ชัน ฉันโคลน repo ที่เปลือยบนคอมพิวเตอร์ทุกเครื่องและเมื่อฉันเสร็จสิ้นการแก้ไขหนึ่งในนั้นฉันยอมรับและผลักดันการเปลี่ยนแปลงไปยัง repo ที่เปลือยเปล่า จากสิ่งที่ฉันได้อ่านพื้นที่เก็บข้อมูลเปลือยไม่มี "ต้นไม้ทำงาน" ดังนั้นหากฉันลอกแบบ repo เปล่าฉันจะไม่มี "ต้นไม้ทำงาน" ฉันเดาว่าต้นไม้ทำงานเก็บข้อมูลการกระทำสาขา ฯลฯ จากโครงการ ที่จะไม่ปรากฏใน repo เปลือย ดังนั้นจึงเป็นการดีกว่าสำหรับฉันที่จะ "ผลักดัน" ความมุ่งมั่นที่จะซื้อคืนต้นไม้ทำงาน จากนั้นทำไมฉันจึงควรใช้ที่เก็บเปลือยและทำไมไม่ ความแตกต่างในทางปฏิบัติคืออะไร นั่นจะไม่เป็นประโยชน์กับคนที่ทำงานในโครงการฉันคิดว่า คุณมีวิธีการอย่างไรสำหรับงานประเภทนี้? ข้อเสนอแนะ?
213 git  repository  git-bare 

7
การเขียนเบ็ดหลังรับคอมไพล์เพื่อจัดการกับสาขาเฉพาะ
นี่คือตะขอปัจจุบันของฉันใน repo เปล่าที่อาศัยอยู่ในเซิร์ฟเวอร์ของ บริษัท : git push origin master ตะขอนี้จะส่งไปยัง Assembla สิ่งที่ฉันต้องการคือการผลักดันสาขาเพียงสาขาเดียว (ตามหลักการแล้ว) เมื่อมีคนผลักดันการเปลี่ยนแปลงไปยังสาขานั้นบนเซิร์ฟเวอร์ของเราและไม่สนใจการส่งไปยังสาขาอื่น เป็นไปได้ไหมที่จะเลือกสาขาจาก repo เปล่าและส่งเฉพาะสาขานั้นไปที่ Assembla
107 git  repository  hook  git-bare 

4
ฉันจะยกเลิกการคอมมิตสุดท้ายในที่เก็บ git bare ได้อย่างไร
โดยคำนึงว่ามีคำสั่ง git หลายคำสั่งที่ไม่สมเหตุสมผลในที่เก็บเปล่า (เนื่องจากที่เก็บเปล่าไม่ใช้ดัชนีและไม่มีไดเร็กทอรีการทำงาน) git reset --hard HEAD^ ไม่ใช่วิธีแก้ปัญหาในการยกเลิกการสั่งการเปลี่ยนแปลงล่าสุดในที่เก็บดังกล่าว ค้นหาผ่านอินเทอร์เน็ตทั้งหมดที่ฉันสามารถพบที่เกี่ยวข้องกับหัวข้อนี้คือสิ่งนี้ซึ่งฉันนำเสนอสามวิธีในการดำเนินการนี้: 1. "อัปเดตการอ้างอิงด้วยตนเอง 2. " git push -fจากที่เก็บที่ไม่เปลือย"; 3. " git branch -f this $that". วิธีแก้ปัญหาใดที่คุณคิดว่าเหมาะสมกว่าหรือมีวิธีใดอีกบ้างในการดำเนินการนี้ น่าเสียดายที่เอกสารที่ฉันพบเกี่ยวกับ git bare repository นั้นค่อนข้างแย่
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.