2013-03-28 39 views
15

Tôi có cam kết với 1 ahead6 behind.Git: Ahead và Behind cùng nhau. Giải quyết thế nào?

Tôi nên làm gì trong tình huống này?

Tôi nghĩ rằng, giải pháp mà có thể là như thế này: git push và sau git pull

Nhưng tôi nghĩ rằng, nó có thể giải quyết chỉ Behind.
Có thể tôi đã sai.

-------*------*-----*-----*-----B 
     \ 
     \ 
      \ 
      *-------A 

Tôi thực hiện một phần và thay đổi sdk.
Bây giờ tôi muốn hợp nhất với B.

+0

Bạn có thể chỉ định vị trí * nhánh * phía sau hoặc phía trước nhánh khác là gì không? Nó cũng sẽ giúp nếu bạn giải thích cái nào bạn "có thể giải quyết" và tại sao. –

+0

@honk Tôi đã chỉnh sửa câu hỏi, xin vui lòng, tư vấn cho tôi những gì tôi nên làm – gaussblurinc

Trả lời

19

git pull (hoặc đúng hơn, git merge một phần mà pull làm) sẽ "giải quyết" cả 'phía trước' và 'phía sau'.

chi nhánh là X cam kết sau có nghĩa là có các cam kết mới (chưa được nhấn) trên nhánh đang được chi nhánh hiện tại của bạn theo dõi.

chi nhánh là X cam kết trước tương tự có nghĩa là chi nhánh của bạn có X cam kết mới chưa được hợp nhất vào chi nhánh được theo dõi.

Khi bạn đã kéo (do đó hợp nhất các thay đổi từ xa vào các địa phương của bạn) và đẩy (do đó xuất bản các thay đổi của bạn và hợp nhất với điều khiển từ xa), nhánh của bạn và nhánh từ xa sẽ trỏ đến cùng một cam kết, không phải là phía trước hoặc phía sau.

+1

'git pull' đã thực sự resovle vấn đề" đằng sau ", sau đó tôi thực hiện' git push' mà xóa "phía trước". – Ville