2015-10-13 30 views
5

Tôi không muốn lãng phí dung lượng trên máy tính của mình và tôi chỉ muốn xem lịch sử kho lưu trữ (cho mỗi nhánh). Đó là lý do tại sao, tôi đã làm:Git clone --no-checkout lại

git clone --no-checkout 

Sau khi tôi làm điều này, ai đó đã đẩy thứ gì đó. Tôi phải làm một cái gì đó để được một lần nữa với lịch sử cập nhật, nhưng tôi không biết những gì. Tất nhiên, tôi có thể sử dụng git checkout & git pull, nhưng tôi không cần các tệp, tôi chỉ cần thư mục .git được cập nhật. Tôi đã thử với git fetch, nhưng có vẻ như lịch sử không được cập nhật.

+0

Đầu ra của git fetch là gì? –

Trả lời

2

Sử dụng --bare lựa chọn cho git clone

Cập nhật:

sau khi nhân bản được hoàn thành đảm bảo rằng phần remote.origin trong cấu hình (xem config tập tin trong repo) chứa fetch chính với một thích hợp. Phần sẽ trông giống như sau:

[remote "origin"] 
    url = <upstream repo remote address> 
    fetch = +refs/heads/*:refs/remotes/origin/* 

Sau đó, bạn có thể cập nhật repo theo thời gian bằng cách phát hành git fetch bên trong repo.

+0

Ok, vì vậy tôi đã sử dụng: 'git clone --bare repo.git'. Làm thế nào tôi có thể cập nhật các repo trần với những thay đổi mới nhất? – user2087045

+0

Hmm, như thường lệ, 'git fetch' bên trong repo. – user3159253

+0

Tôi sẽ đề nghị _manually_ đặt 'core.bare' thành' false' _after_ repo trần được nhân bản. Trong trường hợp này, bạn có thể sử dụng 'git new-workdir' để tạm thời tạo một thư mục hoạt động cho một cam kết/nhánh được yêu cầu khi ví dụ: bạn cần xem một số tệp trong trình chỉnh sửa văn bản. 'git-new-workdir' là một tập lệnh shell đặc biệt trong git contribs. – user3159253

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