Git, giống như hầu hết các hệ thống kiểm soát phiên bản, rất phù hợp để sử dụng bởi nhiều nhà phát triển. Thật vậy, nó là một trong những điểm chính của một hệ thống kiểm soát phiên bản.
Không cần tạo chi nhánh cho mỗi người dùng. Tôi thậm chí sẽ đi xa như vậy để nói rằng nó sẽ phản tác dụng. Nếu bạn đang làm việc trên cùng một tính năng, có thể bạn sẽ muốn nhận các thay đổi của nhau, bằng cách kéo và hợp nhất. Tạo chi nhánh cho mỗi người dùng là thừa và sẽ làm phức tạp những thứ không cần thiết.
Tình huống cam kết bạn mô tả không có vấn đề. Nếu một người dùng khác đã tạo một cam kết mới trên cùng một nhánh với bạn, bạn sẽ bị dừng nếu bạn cố gắng push
. Thay vào đó, trước tiên bạn sẽ phải cắt giảm pull
của người dùng khác và hợp nhất (hoặc rebase) công việc của bạn với những thay đổi đó. Đây là hành vi tiêu chuẩn của git pull
.
Thực hành thông thường là tạo các chi nhánh dựa chủ yếu vào các tính năng. Nếu bạn muốn được hướng dẫn về phân nhánh, this is a popular strategy.
Nguồn
2013-06-25 17:27:00
Bạn có một nhánh cho mỗi bạn, trừ khi bạn đang làm việc trên cùng một máy. Khi bạn nhân bản repo của mình, bạn sẽ nhận được các bộ nhánh * riêng của mình, được đặt tên giống như các nhánh của mọi người, nhưng chúng vẫn là * nhánh của bạn *. – meagar
@meagar Âm thanh thú vị, bạn có thể vui lòng giải thích về điều này không? – danijar
Mỗi cá thể nhân bản của kho lưu trữ là một điều hoàn toàn khép kín. Bạn được tự do làm * bất cứ điều gì bạn muốn * với chi nhánh của bạn, bạn sẽ không bước vào ngón chân của người khác cho đến khi bạn cố gắng đẩy. Khi bạn đẩy và kéo, bạn đang thực hiện hợp nhất chi nhánh địa phương của bạn với chi nhánh từ xa (hoặc ngược lại) thiết lập làm chi nhánh "theo dõi". Điều này giống hệt với việc hợp nhất hai nhánh trên máy cục bộ của bạn; trên thực tế, 'git pull' thực sự chỉ là một lần tìm nạp, tiếp theo là sự hợp nhất. Để đơn giản, 'git push' hạn chế hợp nhất thành các phép trộn nhanh, vì bạn không thể giải quyết các xung đột từ xa một cách hiệu quả. – meagar