2013-05-30 38 views
11

Nếu tôi trên một chi nhánh địa phương đó là không theo dõi bất kỳ chi nhánh từ xa và tôi cung cấp cho các lệnhtừ xa mặc định cho git fetch

git fetch 

Cho tôi đã một vài điều khiển từ xa quy định tại $GIT_DIR/config, từ đó từ xa là tìm nạp xong?

Tôi đã cố gắng tìm hiểu từ man page, nhưng điểm này không rõ ràng với tôi.

Ngoài ra: Làm cách nào để thay đổi điều khiển từ xa mặc định này mà không thực hiện theo dõi chi nhánh tại địa phương?

Trả lời

2

Nó sẽ tìm nạp nguồn gốc từ xa. Đây là điều khiển từ xa bạn đã thực hiện lệnh GIT clone.

+1

Bạn có thể chưa bao giờ thực hiện 'git clone' trên repo, nhưng thêm điều khiển từ xa (được gọi là 'origin' hoặc cách khác) sau sự kiện. – mwfearnley

15

Nếu bạn có nhiều kho lưu trữ từ xa và không chỉ định bất kỳ tên kho lưu trữ từ xa nào, origin sẽ được sử dụng theo mặc định. Nếu không có kho lưu trữ từ xa có tên gốc, sau đó nó sẽ lôi ra nói

fatal: No remote repository specified. Please, specify either a URL or a 
remote name from which new revisions should be fetched. 

Ngoài ra: Làm thế nào tôi có thể thay đổi mặc định này từ xa mà không làm việc theo dõi chi nhánh địa phương?

Bạn có thể đổi tên tên kho đó thành 'origin' để đặt mặc định.

cẩn thận: điều này sẽ không hoạt động nếu nhánh hiện tại đã có luồng ngược được chỉ định trên điều khiển từ xa khác. Từ git help fetch: "Khi không có điều khiển từ xa nào được chỉ định, theo mặc định, nguồn gốc từ xa sẽ được sử dụng, trừ khi có nhánh thượng nguồn được định cấu hình cho nhánh hiện tại". Trong trường hợp này, bạn có thể thay đổi các nhánh ngược dòng để sử dụng origin bằng cách chỉnh sửa các trường remote cho các chi nhánh được định cấu hình trong .git/config.

+2

Không có cách nào thay đổi tên của điều khiển từ xa sang nguồn gốc? –

+5

Đó là một chút không linh hoạt để có git giả định "nguồn gốc" là điều khiển từ xa mặc định. Tôi luôn luôn đổi tên điều khiển từ xa của tôi để có ý nghĩa hơn như "github", "nội bộ" vv Và có, khi "nguồn gốc" từ xa không tồn tại, git sẽ hét lên "gây tử vong: Không có kho lưu trữ từ xa được chỉ định." – Devy

+1

@KlasMellbourn: bạn có thể đặt điều khiển từ xa cho các ngành theo dõi để sử dụng từ xa khác với 'origin' và sau đó từ xa đó sẽ được sử dụng theo mặc định khi bạn chạy' git fetch' với một trong những nhánh được chọn. – ntc2

2

Trong thư mục dự án của bạn, khi bạn khởi tạo git trong bước đầu tiên, thư mục .git được tạo.

Nhìn vào thư mục này cho tệp có tên cấu hình, nó chứa tất cả thông tin chi nhánh. nguồn gốc được sử dụng làm mặc định.

[remote "origin"] 
     fetch = +refs/heads/*:refs/remotes/origin/* 
     url = [email protected]:project.git 

Vì vậy, mã được tìm nạp từ url được liệt kê tại đây.

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