Pertanyaan Bagaimana cara memulai dengan svn: externals?


Saya mencari tutorial yang ringkas dan ditulis dengan baik tentang penggunaan svn: externals.

Saya sudah tahu cara menggunakannya dengan cara dasar sendiri, tetapi saya ingin artikel bagus yang dapat saya tautkan ketika menjawab pertanyaan seperti ini yang muncul baru-baru ini:

Apa yang harus dilakukan dengan banyak proyek tergantung pada sumber yang sama?

Saya akan melakukannya sendiri, tetapi saya tidak menggunakannya cukup sering untuk memaksa leher saya keluar dan menulis tutorial tentangnya. Google secara mengejutkan tidak membantu dengan topik ini.


75
2018-03-19 17:27


asal


Jawaban:


Berikut adalah beberapa bagian tentang itu di manual svnbook / TortoiseSVN:

Ini adalah halaman svnbook di svn: externals. Ini adalah sumber daya yang paling bermanfaat tentang masalah ini.

Yang ini menjelaskan empat cara untuk memasukkan sub-proyek dalam alur kerja (dan dalam proses melewatkan yang kelima: symlink).

Dan yang terakhir ini adalah halaman khusus TortoiseSVN tentang cara mengimpor barang-barang dalam repositori (tidak terkait langsung dengan svn: externals).


43
2018-03-19 17:43



Jika tidak jelas dari tautan yang diberikan di atas, cara Anda mengaturnya svn:externals properti yang terkait dengan revisi tertentu (pinning), ini dia:

svn propset svn:externals "plugins -r12345 https://svn.example.com/common/plugins" extras

Itu akan membuat plugins subdirektori di bawah extras direktori dan hubungkan ke revisi 12345 dari URL SVN eksternal https://svn.example.com/common/plugins.

Ada artikel Red Bean yang menyarankan untuk digunakan propedit sejak itu svn:externals bisa menjadi nilai multi-baris. Contoh di atas akan diubah sebagai berikut untuk digunakan propedit.

svn propedit svn:externals extras

Anda kemudian akan menambahkan satu baris untuk setiap tautan eksternal mengikuti format yang sama yang ditunjukkan di atas untuk nilainya.


17
2018-01-27 17:36



root/repo1/proj/base/common/log.c
root/repo1/proj/base/common/log.h
root/repo1/proj/base/client

root/repo2/proj/test/base

Seperti yang ditunjukkan di atas, kami ingin menyalin 2 file dan 1 direktori ke repo2

Langkah 1

direktori: / home / jack / repo2 / proj /

cd /home/jack

Langkah 2

svn propset svn:externals "../repo1/proj/base/client proj/base/client" repo2

sesuatu seperti: ln repo1/proj/base/client repo2/proj/base/client

Step3

export SVN_EDITOR=vim

Step4

svn propedit svn:externals repo2

vim menunjukkan:

../repo1/proj/base/client proj / base / client

Step5: tambahkan dua file lainnya

../repo1/proj/base/client proj/base/client
../repo1/proj/base/common/log.c proj/base/common/log.c
../repo1/proj/base/common/log.h proj/base/common/log.h

0
2017-11-18 03:02