Helpex - Trao đổi & giúp đỡ Đăng nhập
1020

Tôi có 2 thư mục trên kho GitHub của mình. Tôi muốn xóa một trong số họ. Làm thế nào tôi có thể làm điều đó mà không xóa và tạo lại toàn bộ kho lưu trữ?

1020 hữu ích 2 bình luận 1.0m xem chia sẻ
12 trả lời 12
1977

Xóa thư mục khỏi git và local

Bạn có thể kiểm tra 'master' với cả hai thư mục;

git rm -r one-of-the-directories
git commit -m "Remove duplicated directory"
git push origin <your-git-branch> (typically 'master', but not always)

Xóa thư mục khỏi git nhưng KHÔNG cục bộ

Như đã đề cập trong các bình luận, những gì bạn thường muốn làm là xóa thư mục này khỏi git nhưng không xóa nó hoàn toàn khỏi hệ thống tập tin (cục bộ)

Trong trường hợp đó sử dụng:

git rm -r --cached myFolder
1977 hữu ích 5 bình luận chia sẻ
243

Để xóa thư mục / thư mục chỉ từ kho git chứ không phải từ cục bộ, hãy thử 3 lệnh đơn giản.


Các bước để loại bỏ thư mục

git rm -r --cached FolderName
git commit -m "Removed folder from repository"
git push origin master

Các bước để bỏ qua thư mục đó trong các lần xác nhận tiếp theo

Để bỏ qua thư mục đó từ các lần xác nhận tiếp theo, hãy tạo một tệp trong thư mục gốc có tên .gitignore và đặt tên thư mục đó vào đó. Bạn có thể đặt bao nhiêu tùy thích

tập tin .gitignore sẽ trông như thế này

/FolderName

Làm thế nào để loại bỏ một thư mục từ kho git?

243 hữu ích 5 bình luận chia sẻ
66

Nếu, vì một số lý do, những gì karmakaze nói không hoạt động, bạn có thể thử xóa thư mục bạn muốn sử dụng hoặc với trình duyệt hệ thống tệp của bạn (ví dụ: trong Windows File Explorer). Sau khi xóa thư mục, ban hành lệnh:
git add -A
và sau
git commit -m 'deleting directory'
đó
git push origin master.

66 hữu ích 2 bình luận chia sẻ
20

Bạn có thể thử điều này: git rm -rf <directory_name>

Nó sẽ buộc xóa thư mục.

20 hữu ích 1 bình luận chia sẻ
16

Nếu bạn loại bỏ các tệp trong thư mục ( git rmnhư các câu trả lời khác giải thích), thì thư mục đó không còn tồn tại khi có liên quan đến git. Bạn không thể cam kết một thư mục trống, bạn cũng không thể xóa một thư mục.

Điều này không giống như lật đổ mà bạn phải nói rõ ràng svn rm emptyfolder/và tình cờ tại sao mantrang git mô tả chính nó là "trình theo dõi nội dung ngu ngốc"

Câu trả lời về "Làm cách nào để thêm thư mục trống vào kho git" liên kết đến Câu hỏi thường gặp về chủ đề này :

Hiện tại việc thiết kế chỉ số git (khu vực tổ chức) chỉ cho phép các tệp được liệt kê và không ai đủ thẩm quyền để thực hiện thay đổi để cho phép các thư mục trống đã quan tâm đủ về tình huống này để khắc phục.

Thư mục được thêm tự động khi thêm tệp bên trong chúng. Đó là, các thư mục không bao giờ phải được thêm vào kho lưu trữ và không được theo dõi riêng.

Bạn có thể nói " git add <dir>" và nó sẽ thêm các tập tin vào đó.

Nếu bạn thực sự cần một thư mục tồn tại trong thanh toán, bạn nên tạo một tệp trong đó. .gitignore hoạt động tốt cho mục đích này; bạn có thể để trống, hoặc điền vào tên của các tệp bạn muốn hiển thị trong thư mục.

16 hữu ích 0 bình luận chia sẻ
6

Chuyển đến Thư mục git của bạn sau đó nhập lệnh sau: rm -rf < Tên thư mục >

Sau khi xóa thư mục, hãy xác nhận các thay đổi bằng cách: git commit -m "Thông điệp cam kết của bạn"

Sau đó, chỉ cần đẩy các thay đổi trên thư mục GIT từ xa: git push origin < Tên chi nhánh >

6 hữu ích 0 bình luận chia sẻ
4

Bạn có thể xóa thư mục cục bộ và sau đó đẩy, như sau:

git rm -r folder_name
git commit -m "your commit"
git push origin master
4 hữu ích 0 bình luận chia sẻ
4

Tôi thường sử dụng git add --allđể loại bỏ các tập tin / thư mục từ kho lưu trữ từ xa

rm -r folder_name
git add --all
git commit -m "some comment"
git push origin master

master có thể được thay thế bởi bất kỳ chi nhánh khác của kho lưu trữ.

4 hữu ích 0 bình luận chia sẻ
3

để xóa các thư mục trống

Tôi muốn xóa một thư mục trống (thư mục) tôi đã tạo, git không thể xóa nó, sau một số nghiên cứu tôi đã học được Git không theo dõi các thư mục trống. Nếu bạn có một thư mục trống trong cây làm việc của mình, bạn chỉ cần xóa nó bằng

rm -r folderName

Không cần liên quan đến Git.

3 hữu ích 0 bình luận chia sẻ
2

Bạn có thể sử dụng Cây nguồn Attlasian (Windows) ( https://www.atlassian.com/software/sourcetree/overview ). Chỉ cần chọn tệp từ cây và nhấn nút "Xóa" ở trên cùng. Các tệp sẽ bị xóa khỏi kho lưu trữ cục bộ và cơ sở dữ liệu git cục bộ. Rồi Cam kết, rồi đẩy.

2 hữu ích 1 bình luận chia sẻ
1

Một trong những đồng nghiệp của tôi đã đề xuất BFG Repo-Cleaner mà tôi nghĩ là mạnh mẽ. Nó không chỉ xóa dữ liệu không mong muốn mà còn xóa sạch kho lưu trữ của bạn khỏi mọi thông tin cam kết liên quan.

1 hữu ích 0 bình luận chia sẻ
1

Lệnh git đầu tiên cần biết bạn là ai trước khi xóa bất cứ điều gì

  1. git init
  2. git config user.name "someone"
  3. git config user.email "someone@someplace.com"
  4. git rm -r
  5. git commit -m "xóa dir"
  6. git đẩy nguồn gốc
1 hữu ích 0 bình luận chia sẻ
loading
Không tìm thấy câu trả lời bạn tìm kiếm? Duyệt qua các câu hỏi được gắn thẻ git github bitbucket delete-file git-bash , hoặc hỏi câu hỏi của bạn.

Có thể bạn quan tâm

loading