Tôi muốn git clone
nội dung của một kho lưu trữ tôi có trên GitHub . Khi tôi git clone
(git @ github: me / name.git ...) tôi nhận được một thư mục được gọi name/
và tên bên trong Tôi có nội dung của mình ... Làm cách nào để tôi CHỈ CÓ nội dung?
Tôi muốn git clone
nội dung của một kho lưu trữ tôi có trên GitHub . Khi tôi git clone
(git @ github: me / name.git ...) tôi nhận được một thư mục được gọi name/
và tên bên trong Tôi có nội dung của mình ... Làm cách nào để tôi CHỈ CÓ nội dung?
Câu trả lời:
Nếu thư mục hiện tại trống, bạn có thể làm điều đó với:
git clone git@github:me/name.git .
(Lưu ý .
ở cuối để chỉ định thư mục hiện tại.) Tất nhiên, điều này cũng tạo .git
thư mục trong thư mục hiện tại của bạn, không chỉ mã nguồn từ dự án của bạn.
[directory]
Tham số tùy chọn này được ghi lại trong git clone
trang thủ công , chỉ ra rằng nhân bản vào một thư mục hiện có chỉ được phép nếu thư mục đó trống.
.
như đã thảo luận trong câu trả lời : git clone https://github.com/humaun21/Test .
. Và có, git@github.me/name.git
là một giữ chỗ cho bất cứ địa chỉ git repo thực tế của bạn là gì.
rm .DS_Store
và bạn tốt để đi.
Thật không may, điều này không hoạt động nếu có các thư mục khác, không liên quan đã có trong cùng một thư mục. Tìm kiếm một giải pháp. Thông báo lỗi là: "gây tử vong: đường dẫn đích '.' đã tồn tại...".
Giải pháp trong trường hợp này là:
git init
git remote add origin git@github.com:me/name.git
git pull origin master
Công thức này hoạt động ngay cả khi có các thư mục khác trong thư mục bạn muốn kiểm tra.
github.com
ở đó sau git remote ...
, và không chỉ github
?
git fetch --all
trước git pull origin master
, bởi vì nếu có các nhánh khác trên repo, git pull
sẽ không nhận được những thứ đó trừ khi bạn sử dụng fetch
trước. Điều này có đúng không?
Nếu thư mục không trống, phiên bản sửa đổi một chút của câu trả lời của @ JohnLittle đã hoạt động với tôi:
git init
git remote add origin https://github.com/me/name.git
git pull origin master
Như @ peter-cordes đã chỉ ra, sự khác biệt duy nhất là sử dụng giao thức https thay vì git, mà bạn cần phải cấu hình các khóa SSH .
Bạn có thể chỉ định thư mục đích là tham số thứ hai của git clone
lệnh, vì vậy bạn có thể làm:
git clone <remote> .
Điều này sẽ sao chép kho lưu trữ trực tiếp trong thư mục địa phương hiện tại.
nhân viên này cho tôi
git clone <repository> .