Làm thế nào để có được url của repo svn hiện tại?


83

Tôi có 2 svn kiểm tra mà ai đó thiết lập cho tôi. Bây giờ tôi cần kiểm tra các tệp tương tự trên một máy tính khác, nhưng vì ban đầu tôi không kiểm tra chúng nên tôi không biết các url sẽ sử dụng khi chạy lệnh kiểm tra svn:

svn co WHAT_GOES_HERE?

Vì 2 thanh toán này đã tồn tại trên một trong các máy chủ của tôi, có cách nào để lấy url của repo mà chúng được kiểm tra ban đầu không?

Câu trả lời:


131

Bạn có thể lấy URL của thư mục bạn đang ở, cũng như Root kho lưu trữ và thông tin khác bằng cách chạy lệnh sau trong bất kỳ thư mục đã kiểm tra nào:

svn info

Nếu bạn muốn một lệnh chỉ trả về URL của kho lưu trữ, có lẽ để sử dụng trong tập lệnh, thì bạn có thể truyền tham số sau:

svn info --show-item repos-root-url 

Điều đáng chú ý --show-item là có sẵn trong Subversion 1.9+ . Trong các phiên bản cũ hơn, bạn có thể sử dụng đoạn mã sau để đạt được kết quả tương tự:

svn info | grep 'Repository Root' | awk '{print $NF}'

5
Điều tương tự cho windows: thông tin svn | findstr / C: "Root kho lưu trữ:"
s3v1

Để có được đường dẫn tương đối cho kho lưu trữ (hữu ích ngoài URL gốc): thông tin svn
Elijah Lofgren

12

Đối với SVN 1.7 tôi phải sử dụng

svn info | grep '^URL' | awk '{print $NF}'

Tôi hy vọng điều này sẽ giúp bất kỳ ai khác đến đây với SVN mới hơn


Câu trả lời được chấp nhận vẫn đang làm việc cho svn, version 1.7.9 (r1462340) compiled Apr 13 2013, 14:22:38.
dash17291

4
@ dash17291 nó "hoạt động" như trong nó in ra một cái gì đó nhưng không phải là thông tin đúng. Nó trả về gốc repo không phải là điều người hỏi muốn. Root không phải là url repo (ít nhất là không thường xuyên). Với câu trả lời ở trên, bạn sẽ nhận được repourl.com/root so với của tôi, nơi bạn sẽ nhận được repourl.com/root/branch/branch_name hoặc bất cứ điều gì bạn đã kiểm tra.
JoshStrange

Điều này cũng phù hợp với "URL tương đối" bằng svn 1.8.10. Grep nên được đổi thànhgrep "^URL"
Burhan Ali

3

Không cần grep, chỉ cần sử dụng AWK cho tìm kiếm và phân định chuỗi
svn info | awk '/^URL/{print $2}'

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.