2012-11-13 29 views
49

Khi tôi cố gắng hợp nhất chi nhánh của tôi với một chi nhánh từ xa:Tìm thấy một tập tin hoán đổi bằng tên

git merge feature/remote_branch 

tôi nhận được tin nhắn này:

E325: ATTENTION 
Found a swap file by the name ".git/.MERGE_MSG.swp" 
      owned by: xxxxxx dated: Mon Nov 12 23:17:40 2012 
     file name: ~xxxxxx/Desktop/My-ios-App/.git/MERGE_MSG 
      modified: YES 
     user name: xxxxxx host name: unknown-b8-8d-12-22-27-72.lan 
     process ID: 1639 
While opening file ".git/MERGE_MSG" 
      dated: Tue Nov 13 14:06:48 2012 
     NEWER than swap file! 

(1) Another program may be editing the same file. 
    If this is the case, be careful not to end up with two 
    different instances of the same file when making changes. 
    Quit, or continue with caution. 

(2) An edit session for this file crashed. 
    If this is the case, use ":recover" or "vim -r .git/MERGE_MSG" 
    to recover the changes (see ":help recovery"). 
    If you did this already, delete the swap file ".git/.MERGE_MSG.swp" 
    to avoid this message. 

Swap file ".git/.MERGE_MSG.swp" already exists! 
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort: 

Làm thế nào để đối phó với điều này?

Trả lời

52

Có vẻ như bạn đã mở git commit hoặc git merge đang diễn ra và người chỉnh sửa vẫn đang mở chỉnh sửa thông báo cam kết.

Hai lựa chọn:

  1. Tìm phiên và kết thúc nó (thích hợp).
  2. Xóa tệp .swp (nếu bạn chắc chắn phiên git khác đã biến mất).
+5

Cách tìm tệp .swp này? – user3400881

+4

Cách tìm "phiên" - nghĩa là gì? – RUKAclMortality

0

Tôi cũng gặp lỗi này khi cố gắng kéo các thay đổi vào nhánh không được tạo từ nhánh thượng nguồn mà từ đó tôi đang cố kéo.

Ví dụ - Điều này tạo ra một chi nhánh mới phù hợp với night-version của thượng nguồn

git checkout upstream/night-version -b testnightversion 

Điều này tạo ra một chi nhánh testmaster ở địa phương mà phù hợp với master chi nhánh của thượng nguồn.

git checkout upstream/master -b testmaster 

Bây giờ nếu tôi cố gắng kéo những thay đổi của night-version vào testmaster chi nhánh dẫn đến lỗi này.

git pull upstream night-version //while I'm in `master` cloned branch 

Tôi đã giải quyết được điều này bằng cách điều hướng đến nhánh phù hợp và kéo các thay đổi.

git checkout testnightversion 
git pull upstream night-version // works fine. 
Các vấn đề liên quan