Bất cứ ai có thể vui lòng cho tôi biết tại sao tôi có biểu tượng màu xám khi tôi đẩy các tệp của mình lên github? Trong thư mục ứng dụng, phải có mô hình, chế độ xem và bộ điều khiển nhưng trong GitHub từ xa, tôi không thể nhấp vào.
Câu trả lời:
Có vẻ như bạn đã tạo một mô-đun con, trỏ đến một vị trí từ xa không thể truy cập.
Xem câu trả lời này . Biểu tượng đó, khi có màu xanh lục, sẽ trỏ đến mô-đun phụ. Tôi cho rằng nó chuyển sang màu xám trong trường hợp của bạn vì mô-đun phụ được định cấu hình không chính xác.
Cho rằng .gitmodules
không có, nó phải đã bị xóa, để lại một mô-đun con không có thông tin từ xa.
Nếu đi vào app
và gõ, git remote -v
bạn sẽ thấy mô-đun này cũng đang trỏ đến. Địa điểm này hiện không thể truy cập được.
Trong một kịch bản tương tự, tôi đã thêm một mô-đun con và xóa .gitmodules
. Kết quả trên GitHub trông như thế này:
cat .gitmodules
trả lại? Không đăng các URL thực
git rm --cached <folder_name>
Sau đó vào thư mục mẹ và thực hiện:
git add .
git commit -m "<your_message>"
git push --all
--all
đẩy tất cả các nhánh .
Git cho rằng nó là một mô-đun con vì nó có thư mục .git bên trong. Sửa chữa...
Đã thay đổi thư mục thành dir vi phạm:
cd <offending git submodule>
Xóa thư mục .git bên trong nó:
rm -rf .git
Cập nhật bộ nhớ cache git:
git rm --cached <offending git submodule>
Đi tới thư mục mẹ:
cd ..
Thêm thư mục vào git:
git add .
git commit -m "Changed submodule to directory"
git push --all
Có vẻ như bạn đã khởi tạo git bên trong thư mục. Xóa tệp git (rm -rf) khỏi thư mục con và tạo một repo mới và khởi tạo lại git.
Bạn đã khởi tạo git bên trong thư mục ứng dụng và nó không thể tìm thấy điều khiển từ xa. Xóa tệp .git bên trong ứng dụng. .
[app(master)]$ sudo rm -r .git
Hoặc hiển thị các tệp ẩn bên trong thư mục và thực hiện theo cách thủ công. Sau đó cam kết lại và đẩy lại các thay đổi của thư mục mẹ
Phương pháp dễ nhất mà tôi tìm thấy chỉ đơn giản là xóa thư mục khỏi cục bộ và cập nhật repo từ xa. Điều hướng đến thư mục cục bộ của bạn và cắt thư mục chứa thư mục con .git được thiết lập không chính xác đến một vị trí khác (bên ngoài kho lưu trữ cục bộ, ví dụ: máy tính để bàn) để bạn có thể khắc phục sự cố và sao chép lại sau, sau đó chạy:
git submodule update
git add --all
git commit --all
git push
Thao tác này sẽ xóa thư mục bị xám trên repo từ xa. Sau đó, sao chép lại thư mục đó trong các tệp cục bộ của bạn và chạy add --all commit --all git push như trên, tất nhiên trước tiên hãy chú ý xóa thư mục .git được thiết lập không chính xác khỏi thư mục con để tránh vấn đề tương tự lần nữa; để xác định vị trí này trên hệ thống linux, hãy sử dụng cntrl-h từ trong thư mục để xem các tệp ẩn trong thư mục của bạn, bạn sẽ thấy thư mục .git hiện diện trong thư mục con gây ra sự cố, chỉ cần xóa nó và điều đó sẽ giải quyết
Nó đã có .git bên trong và do đó nó có màu xám. tức là nó cũng đã khởi tạo git bên trong nó.
Trong trường hợp của tôi, tôi đã khởi tạo kho lưu trữ git trong thư mục gốc (thư mục có management.py) khi triển khai tới Heroku trước khi thiết lập kho lưu trữ Git trong thư mục mẹ của dự án.
Sau đó, khi tôi tạo một repo mới trong thư mục mẹ của dự án, thư mục gốc xử lý các chế độ xem mô hình và bộ điều khiển đã bị chuyển sang màu xám. Những điều sau đây đã làm việc cho tôi:
Trong thư mục gốc của bạn với thư mục quản lý, hãy làm như sau:
git remote add origin "github repo link"
git push -u origin master