Dự án rẽ nhánh trên quy trình Github


25

Có một dự án trên Github mà tôi chủ yếu thích và muốn sử dụng. Có một vài điều tôi muốn làm khác đi / loại bỏ nó không có ý nghĩa đối với những gì tôi muốn / cần. Ngoài ra tôi muốn thêm một vài điều là tốt.

Theo tôi hiểu, tôi nên rẽ nhánh dự án và tôi có thể thực hiện bất kỳ thay đổi nào tôi muốn và đẩy trở lại ngã ba của mình. Từ đó, tôi cũng muốn thỉnh thoảng kéo vào ngã ba của mình những thay đổi từ dự án ban đầu để tôi có được các tính năng / sửa lỗi mới nhất.

Có phải tôi không biết tôi nên làm việc như thế nào không? Làm thế nào sẽ mang lại những thay đổi từ dự án ban đầu?


1
Bạn có thể thấy điều này hữu ích: stackoverflow.com/questions/3329943/ từ
Michael Durrant

Câu trả lời:


18

Làm cái nĩa, sau đó làm một nhánh ngay lập tức.

Bây giờ bạn có một bản gốc "không bị ảnh hưởng" có thể được cập nhật trong tương lai để có được những thay đổi mới nhất với git pulls.

Giữ cho bạn chi nhánh địa phương mà không cần đẩy từ xa và bạn có thể làm điều rebaseđó sẽ làm như sau cho bạn:

  • lưu lại những thay đổi của bạn
  • áp dụng những thay đổi mới nhất từ ​​chủ đến chi nhánh của bạn (những thay đổi đến từ bản cập nhật từ xa)
  • áp dụng lại các thay đổi của bạn một lần nữa, trên đầu mã được cập nhật từ master (hoặc nhánh gốc khác).

Khi bạn cuối cùng đã hoàn thành với nó, hợp nhất nó trở lại thành chủ (hoặc bất kỳ nhánh nào mà ngã ba ban đầu đến từ) cục bộ và sau đó gửi yêu cầu kéo cho chủ sở hữu thực tế để kéo nó vào.

Dù sao đó cũng là một quy trình công việc (hay "forkflow"), như tôi hiểu. Những người khác được chào đón để bình luận hoặc sửa chữa hoặc thêm chi tiết.


3
Điều này có vẻ hơi lạc đề. Nó giải quyết 'làm thế nào' mà không cần giải thích nhiều về những gì bạn đang làm và tránh đi vào câu hỏi nghi thức. Bạn có thể cải thiện điều này bằng cách đưa ra một cái nhìn tổng quan cấp cao về những gì bạn đang hoàn thành và giải thích lý do tại sao cách cư xử tốt để làm theo cách này.
Justin Morgan

10

Về cơ bản bạn có nó: một khi bạn tạo một cái nĩa, đó là hộp cát nhỏ của riêng bạn.

Tôi nghĩ rằng điều chính mà bạn cần làm là ngay lập tức tạo ra một nhánh sau khi bạn rẽ nhánh, để giữ cho dòng phát triển ban đầu tách biệt với chính bạn. Cho dù bạn phát triển trong ngành này hay trong bậc thầy phần lớn là vấn đề sở thích cá nhân. Một điều sẽ khiến tôi không thể phát triển thành thạo là quá dễ dàng để thực hiện "git pull" và nhận sai.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.