2013-07-23 41 views
10

Tôi học try git by code school, và với bộ 1,17 Undo nó sử dụng dòng lệnhgit hai dấu gạch ngang có nghĩa là không có nhiều lựa chọn

git checkout -- octocat.txt 

và octocat.txt là một tập tin sau đó và nó giải thích rằng hai đường gạch ngang là

Nó chỉ đơn giản là hứa hẹn dòng lệnh không còn tùy chọn sau '-'. Bằng cách này, nếu bạn có một chi nhánh có tên là octocat.txt, nó sẽ vẫn hoàn nguyên tệp, thay vì chuyển sang chi nhánh cùng tên.

nhưng những gì tôi không thể hiểu là điều đó có nghĩa là gì không có tùy chọn? Và vì không có tùy chọn sau, tại sao nó có thể phân biệt nó theo tệp từ chi nhánh?

Trả lời

17

-- có nghĩa là tùy chọn xử lý dừng và ngay cả khi có gì đó trông giống như một tùy chọn, ví dụ: --help, nó sẽ được coi là thông số thông thường, như tên tệp thay thế.

Sử dụng cú pháp này, bạn thực sự có thể thêm hoặc xóa tệp được gọi là nói --help, điều này sẽ không thể khác được.

Trong cú pháp git, -- cũng thường được sử dụng để chỉ định các tệp bị ảnh hưởng. Ví dụ: git checkout something có thể có nghĩa là chi nhánh thanh toán có tên something hoặc tệp có tên something. Nếu bạn sử dụng git checkout -- something, nó luôn có nghĩa là tệp, không phải là chi nhánh.

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