2013-08-01 46 views
20

Tôi có kho lưu trữ git. Nó có A B C D E ... cam kết. Bây giờ tôi muốn thanh toán D là một chi nhánh mới có tên là Dbranch. Vì vậy, tôi thực hiện: git checkout D -b Dbranch. Và bây giờ tôi muốn xóa nhánh này. Trước tiên, tôi cần chuyển sang nhánh chính, sau đó sử dụng git branch -d Dbranch để xóa nó. Nhưng khi tôi thực hiện git checkout master, nó mang lại cho tôi lỗi.lỗi chính git checkout: các tệp cây làm việc không được theo dõi sau sẽ bị ghi đè bằng cách thanh toán

error: The following untracked working tree files would be overwritten by checkout: 
    source/a/foo.c 
     ...... (too many lines) 
Please move or remove them before you can switch branches. 
Aborting 

Làm cách nào để xóa Dbranch?

Trả lời

0

làm một:

git branch 

nếu git hiển thị cho bạn một cái gì đó như:

* (no branch) 
master 
Dbranch 

Bạn có một "ĐẦU tách ra". Nếu bạn có sửa đổi một số tập tin trên chi nhánh này bạn, cam kết họ, sau đó quay trở lại để làm chủ với

git checkout master 

Bây giờ bạn sẽ có thể xóa các Dbranch.

57

Hãy thử git checkout -f master.

-f hoặc --force

Nguồn: https://www.kernel.org/pub/software/scm/git/docs/git-checkout.html

When switching branches, proceed even if the index or the working tree differs from HEAD. This is used to throw away local changes.

When checking out paths from the index, do not fail upon unmerged entries; instead, unmerged entries are ignored.

+1

Ahh cuộc sống của tôi lưu! Tôi đã rất lo lắng khi thấy tất cả các tệp hiện có của tôi đã bị xóa sau khi chuyển nhánh. Sau khi kiểm tra buộc tôi đã lấy lại tất cả các mục của tôi. – itsazzad

+0

Tôi gặp sự cố khi tôi nhận được lỗi "các tệp cây đang hoạt động không đúng" nhưng 'git status -u' không hiển thị gì cả ... Tôi không biết làm thế nào để xóa tập tin bí ẩn này, nhưng lệnh này đã giúp tôi phá vỡ bây giờ – JLewkovich