ตอนที่ 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 และดูข้อความช่วยเหลือสำหรับแต่ละคำสั่งเพื่อค้นหาฟีเจอร์เจ๋งๆ ทั้งหมด และแจ้งให้เราทราบหากคุณมีปัญหาใดๆ