Latar Belakang Membosankan - Ringkasan: Saya tahu kita tidak menggunakan GIT dengan benar! .
Ini dimulai sebagai proyek hobi kecil dan telah meningkat - perusahaan saya menggunakan Git untuk melacak / mengelola perubahan pada platform perangkat lunak berbasis web yang dipesan lebih dahulu dan bertindak sebagai pusat penyimpanan. Kira-kira 300 perangkat seluler kemudian diatur untuk menarik ke repositori kloning lokal saat memulai dari server intranet yang di-host sendiri sehingga mereka dapat mengakses versi terbaru perangkat lunak ketika tidak terhubung ke jaringan (kami menggunakan cabang sehingga mereka hanya terpapar kode yang sudah matang / teruji).
Kami sekarang telah pindah pada langkah - kami memiliki database "bagian" yang diperbarui setiap hari. Saya telah membuat versi terpisah dari basis data ini menggunakan skrip cron untuk membuat versi mandiri yang dapat dibuka pada "mesin tidak terhubung" lokal.
Masalah
Saya Saya memiliki satu set skrip PHP yang mengambil data tabel basis data dan mengekspornya ke dalam format file datar yang diperlukan oleh aplikasi, dan menyalin gambar tambahan sejak siklus terakhir ke lokasi yang benar. Semua file disimpan di/var/www/clonedrepository
Saya kemudian ingin menjalankan perintah berikut pada direktori:
git add .
git commit -m "Automatic update: todaysdate"
git push
Repositori diklon dari /home/git/repository
mana dilayani menggunakan symlink git deamon dan apache memungkinkan akses http (untuk kloning perangkat bodoh) dan SSH (untuk orang dewasa untuk mengedit / memperbarui).
Masalahnya adalah, saya seorang programmer web dan saya keluar dari kedalaman saya. Saya mengatur repositori git dan merasa nyaman dengan baris perintah, tetapi saya tidak tahu tempat terbaik untuk memulai.
Catatan: Tidak akan pernah ada konflik karena tidak ada pengguna yang akan mengedit file data dan sistem tidak akan mengedit apa pun selain file data.
Jadi secara ringkas , saya punya repositori sentral pada kotak Ubuntu Linux saya ( /home/git/repository
) yang ingin saya perbarui setiap hari dari repositori yang dikloning ( /var/www/clonedrepository
) pada kotak yang sama.