Pertanyaan Bagaimana cara saya mendapatkan daftar semua file tidak berversi dari SVN?


Terkadang Anda berkembang dan Anda memutuskan untuk berkomitmen, lupa Anda membuat beberapa file pada proyek Anda. Kemudian beberapa hari ke depan, teman Anda akan membangun dari Subversion dan mengeluh bahwa beberapa file tampak hilang. Anda sadar, ah sial, saya lupa menambahkan file-file itu!

Bagaimana saya bisa mendapatkan daftar file yang tidak berada di bawah kontrol versi dari Subversion jadi saya yakin saya telah menambahkan semuanya ke repositori?


75
2017-10-19 05:25


asal


Jawaban:


Menggunakan svn status perintah:

svn status | grep ^?

File yang tidak diversi ditandai dengan? di awal baris.

Jika Anda menemukan bahwa Anda selalu memiliki beberapa file tertentu yang tidak boleh ditambahkan ke repositori (misalnya, binari yang dihasilkan), Anda harus mengatur svn:ignore properti pada direktori yang berisi sehingga file-file ini tidak akan terus muncul ketika menggunakan svn status.


97
2017-10-19 05:26



Jika beberapa file telah 'diabaikan' ditambahkan ke statusnya, mereka tidak akan muncul dalam status 'svn'. Kamu akan membutuhkan:

svn status --no-ignore

41
2017-08-29 14:05



Jika Anda menjalankan Windows, Anda dapat melakukan sesuatu yang serupa Greg HewgillJawabannya menggunakan PowerShell.

(svn stat) -match '^\?'

Ini dapat diperpanjang dengan mudah untuk menemukan semua file tidak berversi dan diabaikan dan menghapusnya.

(svn stat "--no-ignore") -match '^[I?]' -replace '^.\s+','' | rm

Semoga bermanfaat bagi seseorang!


15
2017-07-04 12:42



Atau dari baris perintah Windows:

svn stat | find "?"

10
2017-11-26 17:05



Anda dapat menggunakan perintah ini untuk mencantumkan semua lintasan untuk file yang tidak berversi:

svn status | awk '/^?/ {print $2}'

Bagian pertama akan melakukan svn status, dan kemudian akan mengarahkan output ke AWK yang akan melakukan filter sederhana "karakter pertama harus '?'" maka akan mencetak parameter kedua "yang merupakan jalur file".

svn status akan selalu tidak cetak file yang diabaikan. Anda dapat menambahkan file atau jalur dengan menambahkan jalur tersebut menggunakan

svn propset svn:ignore "PATH OR PATERN"

0
2017-09-25 11:00