ตอนที่ 22: โดย Edward Lesmes in San Francisco, CA (มิถุนายน 2021)
ตอนก่อนหน้า
เครื่องมือ Depot คือคอลเล็กชันเครื่องมือที่สร้างขึ้นจาก Git เพื่อลดความซับซ้อนของเวิร์กโฟลว์ของนักพัฒนาซอฟต์แวร์ที่มีส่วนร่วมกับโค้ดเบสของ Chromium และโครงการที่เกี่ยวข้อง โดยมีเครื่องมือในการรับโค้ด อัปโหลดการเปลี่ยนแปลงเพื่อการตรวจสอบ อัปเดตขั้นตอนการชำระเงินให้เป็นปัจจุบันอยู่เสมอ และอีกมากมาย
รับโค้ด
เรียกใช้ fetch chromium
ในไดเรกทอรีที่ว่างเปล่า คำสั่ง fetch
ยังใช้เพื่อรับโค้ดสำหรับที่เก็บอื่นๆ เช่น v8 หรือ webrtc ได้ด้วย ดูรายการทั้งหมดได้ที่ fetch help
อัปโหลดการเปลี่ยนแปลงเพื่อรับการตรวจสอบ
CL แต่ละรายการจะสอดคล้องกับ Branch เดียวใน Git ดังนั้นให้เริ่มด้วยการเรียกใช้ git new-branch <branch_name>
เพื่อสร้าง Branch ใหม่ ดำเนินการเปลี่ยนแปลงกับสาขานี้ได้มากเท่าที่ต้องการและเรียกใช้ git cl upload
เมื่อพร้อมรับการตรวจสอบ
git cl issue
จะแจ้งให้คุณทราบว่าสาขาของคุณเชื่อมโยงกับ CL ใด
โปรดใช้ git cl issue <issue>
เพื่อเปลี่ยนการตั้งค่า
อัปเดตขั้นตอนการชำระเงินให้เป็นปัจจุบันอยู่เสมอ
เรียกใช้ git rebase-update
เป็นระยะเพื่อซิงค์ Branch ในเครื่องกับอัปสตรีม และใช้ gclient sync
เพื่ออัปเดตที่เก็บ third_party
และเรียกใช้ hook ก่อนคอมไพล์
จัดการ CL หลายรายการ
git cl status
จะแสดง CL ที่เชื่อมโยงกับสาขาในพื้นที่และสถานะ (ยังไม่ได้ส่ง, lgtm, ปิดแล้ว เป็นต้น)git freeze
และgit thaw
ทำงานเหมือนgit stash
แต่จะติดตามสาขาที่เชื่อมโยงกับการเปลี่ยนแปลงที่ซ่อนไว้git map
จะแสดงประวัติของสาขาทั้งหมด และgit map-branches
จะแสดงความสัมพันธ์แบบอัปสตรีมระหว่างสาขาทั้งหมดของคุณgit new-branch --upstream_current <branch_name>
จะสร้างสาขาใหม่ที่ด้านบนของสาขาที่มีอยู่ ใช้git rebase-update
เพื่อฐานสาขาที่เกี่ยวข้องใหม่หลังจากทำการเปลี่ยนแปลงกับ Branch ฐาน
ดำเนินการกับ CL ที่มีอยู่ต่อไปในเครื่องอื่น
เรียกใช้ git cl patch <issue_url>
เพื่อเลือก CL ที่มีอยู่ที่ด้านบนของ Branch ปัจจุบัน โปรดทราบว่าระบบจะเชื่อมโยง Branch ปัจจุบันกับ CL ที่แพตช์ ใช้ git cl patch <issue_url> --reapply
เพื่อทิ้งการเปลี่ยนแปลงในเครื่องและนำปัญหาไปใช้อีกครั้ง
และอื่นๆ
โปรดดูบทแนะนำเครื่องมือสำหรับ Depot และดูข้อความช่วยเหลือสำหรับแต่ละคำสั่งเพื่อค้นหาฟีเจอร์เจ๋งๆ ทั้งหมด และแจ้งให้เราทราบหากคุณมีปัญหาใดๆ