Kontrol revisi pada mesin tanpa hak akses root

0

Saya menggunakan server komputasi (Scientific Linux) yang saya tidak punya hak root. Saya ingin melacak perubahan yang saya buat pada kode saya dan semua forking yang saya lakukan.

Subversi sepertinya cocok untuk ini, tetapi saya rasa saya tidak bisa mengaturnya tanpa hak root. Adakah yang tahu skrip kontrol revisi sederhana yang bisa saya gunakan?

Sunting:

Menilai dari jawabannya, saya menyimpulkan bahwa saya tidak jelas tentang sesuatu. Saya tidak ingin mengunggah kode saya ke server lain. Saya hanya ingin menyalinnya secara lokal ke folder khusus (atau yang serupa). Kami melakukan pencadangan data setiap jam pada mesin itu.

Yotam
sumber
Tidak ada jawaban yang mengatakan bahwa mengunggah ke server lain diperlukan. Keempat saran tersebut menggunakan repositori yang lengkap, semuanya dalam satu direktori.
grawity

Jawaban:

3

Subversi juga dapat dengan mudah digunakan secara lokal tanpa hak root. Pertama buat repositori lokal dengan

svnadmin create <repo_dir>

dan kemudian lakukan checkout

svn checkout file:///<path_to_repo_dir> <checkout_dir>

Bekerja seperti pesona tanpa memerlukan hak istimewa. Anda bahkan dapat mengakses repositori melalui svn + ssh jika Anda memiliki akses SSH ke mesin itu via

svn checkout svn+ssh://user@host/<path_to_repo_dir> <checkout_dir>
Jaap Eldering
sumber
2

Kebanyakan sistem kontrol versi terdistribusi yang populer dapat bekerja tanpa hak root. Repositori sepenuhnya mandiri.

Sebagai contoh, satu-satunya perintah yang diperlukan untuk mengubah direktori saat ini menjadi repositori Git atau Hg (alias Mercurial) adalah git initdan hg initmasing - masing. Semua data tetap berada dalam direktori yang sama, meskipun sangat mudah untuk mendorong ke server lain melalui SSH.


Jika program belum diinstal, melakukannya sendiri dimungkinkan - cukup unduh kode sumber, kompilasi, dan instal di direktori home Anda (misalnya, ~/usratau ~/.local). Ini bekerja sangat baik dengan Git; Saya belum diuji dengan Hg.

Siapkan (sesuaikan $HOME/usrjika diinginkan):

local="$HOME/usr"
export PATH="$local/bin:$PATH"

Instal Git:

mkdir -p "$local"
wget https://git-core.googlecode.com/files/git-1.7.8.tar.gz -O - | tar xz
cd git-1.7.8
./configure --prefix "$local" && make && make install

Untuk menggunakan, atur PATH lagi seperti pada langkah "Siapkan".

grawity
sumber
0

DVCS lain yang layak dipertimbangkan (tentu saja akan berfungsi sebagai pengguna sederhana) adalah fosil .

Ini memiliki banyak fitur yang menggoda:

  • biner berukuran kecil tanpa ketergantungan eksternal
  • bekerja pada semua sistem operasi utama
  • antarmuka web bawaan, tiket, wiki, blog (dikenal sebagai "github in a box")
  • "ayah" nya adalah D. Richard Hipp - penulis sqlite
vtest
sumber