2013-08-15 32 views
9

tôi đã bỏ lỡ phím tab trước khi nhấn enter trên git branch địa phương của tôi, tôi đã kết thúc thực hiện:lệnh gì đã git làm với "git reset --har"

git reset --har 

so với dự định

git reset --hard 

Thông thường git than phiền khi chạy một lệnh có vẻ bị nhập sai. Tôi đã xem qua --help cho git reset và không tìm thấy arg cho "h", "a", "r".

Dường như đã chạy quá trình khôi phục cài đặt gốc, Điều gì đã thực sự chạy? Hoặc nếu nó chạy "--hard" tại sao?

thông tin bổ sung: sylvesterjakubowski $ git --version Phiên bản git 1.7.12.4 (Apple Git-37) #on sư tử núi.

Trả lời

6

Đây là theo trang gitcli doc:

nhiều lệnh cho phép một lựa chọn dài "--tùy chọn" được viết tắt chỉ để tiền tố độc đáo của họ (ví dụ như nếu không có lựa chọn nào khác có tên bắt đầu bằng "opt", bạn có thể đánh vần "--opt" để gọi cờ "--option"), nhưng bạn nên đánh vần chúng hoàn toàn khi viết tập lệnh của bạn; các phiên bản sau của Git có thể giới thiệu một tùy chọn mới có tên có cùng tiền tố, ví dụ: "--optimize", để tạo một tiền tố ngắn trước đây không phải là duy nhất.

Cũng trên cùng một trang:

Commands có hỗ trợ tăng cường phân tích cú pháp lựa chọn chấp nhận tiền tố độc đáo của một lựa chọn miễn là nếu nó hoàn toàn được nêu ra, nhưng sử dụng điều này với một cách thận trọng . Ví dụ, git commit --amen hoạt động như thể bạn đã gõ git commit --amend, nhưng điều đó chỉ đúng cho đến khi phiên bản sau của Git giới thiệu một tùy chọn khác có cùng tiền tố, ví dụ như 'git commit --amenity " tùy chọn.

Vì vậy, yeah, nó chạy git reset --hard

3

Nó không chạy tương đương -h -a -r vì có hai dấu gạch ngang trước, không phải một.

Git có thể đang triển khai thuật toán tại đây để cho phép bạn sử dụng kết quả phù hợp nhất ngắn nhất cho tên cờ dài. Vì không có cờ dài cho git reset bắt đầu bằng --har, sau đó nó có thể xử lý yêu cầu đó một cách rõ ràng và được tiến hành để chạy git reset --hard.

+2

Vâng, git thực hiện điều này. – amalloy

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