Làm cách nào để kiểm tra bản sửa đổi Subversion cụ thể từ dòng lệnh?


364

Tôi muốn kiểm tra một bản sửa đổi cụ thể của một thư mục trong Subversion bằng dòng lệnh.

Tôi không thấy tùy chọn chỉ định số sửa đổi trong TortoiseProc.exe,

TortoiseProc.exe /command:checkout <url>

Làm thế nào để tôi có được bản sửa đổi tôi muốn? Là TortoiseProc.execông cụ phù hợp cho những gì tôi muốn làm?

Câu trả lời:


469

Nếu bạn đã kiểm tra cục bộ rồi thì bạn có thể cdđến nơi được kiểm tra, sau đó sử dụng cú pháp này:

$ svn up -rXXXX

ref: Kiểm tra một sửa đổi cụ thể từ lật đổ từ dòng lệnh


Đối với một số lý do điều này không làm gì cho tôi. Vẫn ở bản sửa đổi cũ.
IgorGanapolsky

2
@IgorGanapolsky Bạn đã sửa đổi cục bộ tệp bạn đang cố cập nhật chưa?

Làm thế nào để bạn thiết lập lại cứng? (Bỏ qua xung đột?)
Dilip Raj Baral

313

Hoặc

svn checkout url://repository/path@1234

hoặc là

svn checkout -r 1234 url://repository/path

3
Tôi đã phải xóa không gian sau -r để "-r1234" làm việc cho tôi.
Elijah Lofgren

257

Bất kỳ lý do cho việc sử dụng TortoiseProc thay vì chỉ dòng lệnh svn bình thường?

Tôi sẽ sử dụng:

svn checkout svn://somepath@1234 working-directory

(để có bản sửa đổi 1234)


36

Bạn không bao giờ nên sử dụng TortoiseProc.exe làm máy khách Subversion dòng lệnh! TortoiseProc chỉ nên được sử dụng để tự động hóa GUI của TortoiseSVN. Xem ghi chú trong Hướng dẫn của rùaSVN :

Hãy nhớ rằng TortoiseSVN là một máy khách GUI và hướng dẫn tự động hóa này chỉ cho bạn cách làm cho các hộp thoại TortoiseSVN xuất hiện để thu thập dữ liệu nhập của người dùng. Nếu bạn muốn viết một tập lệnh không cần nhập liệu, bạn nên sử dụng ứng dụng khách dòng lệnh Subversion chính thức.

Sử dụng máy khách svn.exe dòng lệnh Subversion . Với ứng dụng khách dòng lệnh, bạn có thể

Bạn có thể nhận thấy rằng với svn checkoutsvn exportbạn có thể nhập số REV làm --revision REVđối số và theo @REVsau URL. Cái đầu tiên được gọi là sửa đổi phẫu thuật, và cái thứ hai được gọi là sửa đổi chốt. Đọc SVNBook để biết thêm thông tin về khái niệm chốt và sửa đổi hoạt động .


8

svn kiểm tra để sửa đổi nơi kho lưu trữ của bạn trên một máy chủ khác

Sử dụng svn loglệnh để tìm ra phiên bản nào có sẵn:

svn log

Bản in nào:

------------------------------------------------------------------------
r762 | machines | 2012-12-02 13:00:16 -0500 (Sun, 02 Dec 2012) | 2 lines

------------------------------------------------------------------------
r761 | machines | 2012-12-02 12:59:40 -0500 (Sun, 02 Dec 2012) | 2 lines

Lưu ý số lượng r761. Dưới đây là mô tả lệnh:

svn export http://url-to-your-file@761 /tmp/filename

Tôi đã sử dụng lệnh này cụ thể:

svn export svn+ssh://machines@mywebsite.com/home1/oct/calc/calcFeatures.m@761 calcFeatures.m

Điều này khiến calcFeatures.m sửa đổi 761 được kiểm tra vào thư mục hiện tại.


6

Tôi tin rằng cú pháp cho việc này là /rev:<revisionNumber>

Tài liệu cho việc này có thể được tìm thấy ở đây


3

Bạn có thể thử

TortoiseProc.exe /command:checkout /rev:1234

để được sửa đổi 1234.

Tôi không chắc chắn 100% /revtùy chọn này tương thích với checkout, nhưng tôi đã có ý tưởng từ một số tài liệu của TortoiseProc .


2

Dường như bạn có thể sử dụng trình duyệt kho lưu trữ. Nhấp vào nút sửa đổi ở trên cùng bên phải và thay đổi nó thành phiên bản bạn muốn. Sau đó nhấp chuột phải vào tệp của bạn trong trình duyệt và sử dụng 'Sao chép vào bản sao đang hoạt động ...' nhưng thay đổi tên tệp mà nó sẽ kiểm tra, để tránh xung đột.


1

Bạn sẽ phải sử dụng svn trực tiếp:

svn checkout URL[@REV]... [PATH]

svn help co

cung cấp cho bạn thêm một chút giúp đỡ.


2
theo như những gì tôi thấy, tôi nghĩ một ví dụ có thể giúp ích. Bạn có bao gồm hay không bao gồm dấu ngoặc? 3 tiết thì sao? Còn không gian sau 3 tiết thì sao? Những ký tự nào theo nghĩa đen và ký tự giữ chỗ nào và các ký tự được thêm vào cho các trình giữ chỗ?
ahnbizcad

0

Chuyển đến thư mục và sử dụng lệnh:

svn co {url}
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.