Bagaimana cara memindahkan file (atau folder) dari satu folder ke folder lainnya di TortoiseSVN?

247

Saya ingin memindahkan file atau folder dari satu tempat ke tempat lain dalam repositori yang sama tanpa harus menggunakan Browser Repo untuk melakukannya, dan tanpa membuat dua operasi add / delete yang independen. Menggunakan Repo Browser berfungsi dengan baik kecuali bahwa kode Anda akan menggantung dalam keadaan rusak sampai Anda mendapatkan perubahan pendukung yang diperiksa setelahnya (seperti file .csproj misalnya).

Pembaruan: Orang-orang telah menyarankan "pindah" dari baris perintah. Apakah ada yang setara dengan TortoiseSVN?

jeremcc
sumber

Jawaban:

448

Untuk memindahkan file atau set file menggunakan Tortoise SVN, klik kanan dan seret file target ke tujuan dan lepaskan tombol mouse kanan. Menu popup akan memiliki SVN move versioned files hereopsi.

Perhatikan bahwa folder tujuan harus sudah ditambahkan ke repositori agar SVN move versioned files hereopsi muncul.

Tandai Embling
sumber
32
Saya perlu melakukan hal yang sama dan ini bekerja dengan sempurna. Tidak pernah tahu tentang opsi ini. Terima kasih banyak!
DavGarcia
4
Terima kasih! Catatan: Setelah itu, muncul di log perubahan sekelompok file dan direktori DIHAPUS dan TAMBAH, tetapi riwayat revisi tidak mengikuti file di sekitar. :)
Yoh Suzuki
1
Apa yang harus saya lakukan jika saya sudah memindahkan file tetapi svn masih berpikir itu ada di direktori lain?
Shawn Mclean
4
Anda juga (tentu saja dalam v1.7.6) perlu memastikan bahwa direktori yang Anda pindahkan file sudah ditambahkan subversi
icc97
Jawaban legendaris membuat hari saya, ty!
Cyril Gandon
22

Di Windows Explorer, dengan tombol mouse kanan, klik dan seret file dari tempat file itu ke tempat yang Anda inginkan. Setelah melepaskan tombol mouse kanan, Anda akan melihat menu konteks dengan opsi seperti "SVN Pindahkan file versi di sini".

http://tortoisesvn.net/most-forgotten-feature

yknott
sumber
5

Jika Anda ingin memindahkan file dan memperbarui file csproj, cara termudah adalah menggunakan plugin Visual Studio seperti AnkhSVN . Itu secara otomatis akan melakukan tindakan pemindahan (sebagai delete + add with history, karena itulah cara Subversion bekerja) dan perubahan dalam .csproj

Sander Rijken
sumber
4

Dari baris perintah, Anda bisa mengetik svn mv path1 path2. Ini akan membuat operasi tambah dan hapus, tetapi sebenarnya tidak ada cara untuk itu - sejauh yang saya tahu - di Subversion.

Clinton N. Dreisbach
sumber
1

Gunakan perintah RENAME Tortoise, dan ketik jalur relatif ("folder / file.ext").

WhyNotHugo
sumber
0

Seperti yang disebutkan sebelumnya, Anda akan membuat perintah tambah dan hapus. Anda dapat menggunakan langkah svn pada copy pekerjaan Anda atau url repositori. Jika Anda menggunakan copy pekerjaan Anda, perubahan tidak akan dilakukan - Anda harus melakukan dalam operasi yang terpisah.

Jika Anda svn memindahkan URL, Anda harus menyediakan - pesan, dan perubahan akan segera tercermin dalam repositori.

dwilkins
sumber
0

Gunakan svn moveperintah untuk memindahkan file / folder.

acemtp
sumber
0

Anda harus menyeret file menggunakan tombol kanan mouse. Saat Anda merilis file ke tujuan baru Anda akan mengamati opsi:

SVN memindahkan file versi di sini.

Cukup pilih opsi ini dan Anda selesai !!

Manish Singhal
sumber