2014-05-17 17 views
9

Hiện nay, khi tôi kéo, tôi nhận được những thay đổi từ tất cả các chi nhánh:Làm thế nào tôi có thể yêu cầu Git bỏ qua các nhánh nhất định khi tìm nạp/kéo?

$ git pull 
remote: ... 
Unpacking objects: ... 
From ssh://github.com/... 
    a69d94d..a2019da master  -> origin/master 
    b684d4a..b8819dc develop -> origin/develop 
+ 263c644..f1c1894 gh-pages -> origin/gh-pages (forced update) 
Updating a69d94d..a2019da 

Tôi thích hành vi này, nhưng tôi không cần phải nhận được nội dung từ các chi nhánh gh-pages như rằng chỉ chứa nội dung được tạo ra. Làm thế nào để cấu hình Git để lấy từ tất cả các chi nhánh ngoại trừ một số (gh-pages). Tôi cũng muốn tránh không bao giờ nhìn thấy gh-pages trong danh sách các chi nhánh địa phương của tôi.

+0

Câu trả lời trong http://stackoverflow.com/questions/6368987/how-do-i-fetch-only-one-branch-of-a-remote-git-repository có trợ giúp không? Mặc dù, nó chỉ là về lấy. – tigeronk2

+0

Sẽ không cấu hình 'remote.origin.fetch' như tôi đề cập trong câu trả lời của tôi, chỉ bao gồm nhánh bạn muốn và không phải' gh-branch'? – VonC

+0

@VonC có, nhưng tôi không phải làm điều này bằng tay cho mỗi nhánh từ xa? –

Trả lời

5

Bạn có thể sửa đổi cấu hình của bạn để lấy chỉ có một chi nhánh:

[remote "origin"] 
    fetch = +refs/heads/master:refs/remotes/origin/master 

Với

git config remote.origin.fetch +refs/heads/master:refs/remotes/origin/master 

Nếu bạn có nhiều hơn một chi nhánh, bạn có thể thêm một vài lấy chỉ thị để lấy những người (trừ gh-pages , cái bạn không muốn tìm nạp)

Xem this question để biết ví dụ về tìm nạp nhiều nhánh.

Tôi hiểu đây không phải là giải pháp có quy mô tốt, nhưng refspec tìm nạp không hỗ trợ cú pháp loại trừ thông thường (như ^<rev>: xem "Specifying ranges").

Có một cách để ẩn một refspec nhất định, được giới thiệu trong git 1.8.2: commit daebaa7, "upload/receive-pack: allow hiding ref hierarchies", nhưng đó là ở phía bên kia, không phải là một phía khách hàng.

+3

Câu hỏi đặt ra là ** bỏ qua ** một câu hỏi và không bao gồm chỉ một câu hỏi. – manojlds

+0

@manojlds sẽ không bao gồm một người bỏ qua người khác? Về cơ bản, bạn cần liệt kê các nhánh bạn muốn tìm nạp. – VonC

+0

@manojlds Câu trả lời này * nên hoạt động, nhưng tôi sẽ chờ xem liệu có ai khác có giải pháp ít thủ công hơn không. Tôi thường xuyên chi nhánh. –

Các vấn đề liên quan