2012-01-29 36 views
32

Có thể xóa tất cả các tệp trong một kho lưu trữ và cập nhật nó chỉ với các tệp tôi có trong máy cục bộ của mình không? Lý do là, có một số tập tin không cần thiết trong github của tôi và vì vậy tôi muốn loại bỏ các tập tin đó. Thay vì loại bỏ các tập tin một, tôi muốn xem nếu nó có thể chỉ cần loại bỏ tất cả các tập tin trong repo git của tôi và cập nhật/đẩy chỉ với các tập tin trong máy địa phương của tôi. Hy vọng rõ ràng của nó. Cảm ơn.Làm cách nào để xóa tất cả các tệp trong repo git của tôi và cập nhật/đẩy từ repo git cục bộ của tôi?

+0

Bản sao của [Làm cách nào để xóa một tệp khỏi git repo?] (Http://stackoverflow.com/questions/2047465/how-can-i-delete-a-file-from-git-repo) –

Trả lời

17

Có, nếu bạn thực hiện git rm <filename> và cam kết & hãy đẩy những thay đổi đó. Tệp sẽ biến mất khỏi kho lưu trữ cho các thay đổi đó và các cam kết trong tương lai.

Tệp sẽ vẫn khả dụng cho các bản sửa đổi trước đó.

0

Thực hiện git add -A từ phía trên cùng của bản sao làm việc, hãy nhìn vào git status và/hoặc git diff --cached để xem lại những gì bạn sắp làm, sau đó git commit kết quả.

36

Bạn có thể làm điều đó như thế này:

cd /tmp 
git clone /your/local/rep # make a temp copy 
cd rep 
git rm -r *    # delete everything 
cp -r /your/local/rep/* . # get only the files you want 
git add *     # add them again 
git status     # everything but those copied will be removed 
git commit -a -m 'deleting stuff' 
cd /your/local/rep 
git pull /tmp/rep   # now everything else has been removed 

Có lẽ một oneliner cho rằng ...

22

Thứ nhất, loại bỏ tất cả các file từ kho Git của bạn sử dụng: git rm -r *

Sau đó bạn nên cam kết : sử dụng git commit -m "your comment"

Sau đó bạn đẩy sử dụng: git push (cập nhật vị trí gốc nguồn gốc ry)

Để xác minh trạng thái của bạn sử dụng: git status

Sau đó bạn có thể sao chép tất cả các file cục bộ của bạn trong thư mục Git địa phương, và bạn thêm chúng vào kho Git sử dụng: git add -A

Bạn cam kết (git commit -m "your comment" và bạn đẩy (git push)

2

Xóa tất cả các yếu tố trong kho:

$ git rm -r * 

sau đó:

$ git commit -m 'Delete all the stuff' 
2

Quy trình này rất đơn giản và tuân theo quy trình tương tự như bất kỳ cam kết nào.

  1. Đảm bảo repo của bạn được cập nhật đầy đủ. (ví dụ: git pull)
  2. Điều hướng đến thư mục repo trên đĩa cục bộ của bạn.
  3. Xóa các tệp bạn không muốn nữa.
  4. Sau đó git commit -m "nuke and start again"
  5. Sau đó git push
  6. lợi nhuận.
-1

Xóa thư mục ẩn .git (mà bạn có thể định vị trong thư mục dự án) và bắt đầu lại quá trình tạo kho git bằng lệnh git init.

+0

OP chỉ định từ xa không phải địa phương. – Iceman

0

Xóa tất cả các yếu tố trong kho:

git rm -r * -f -q 

thì:

git commit -m 'Delete all the stuff' 

thì:

git push -u origin master 

thì:

Username for : "Your Username" 
Password for : "Your Password" 
Các vấn đề liên quan