2011-08-15 13 views
8

üzerine otomatik işlemek, ama bazı küçük yalnız projeleri yapmak ve içinden bazı sürüm ve senkronizasyonu ama devam istiyoruz (Farklı bilgisayarlarda) işleme koyma ve kontrol etmeyi hatırlama süreci, dosya değişiminde otomatik olarak bulutlara yüklenen bir dropbox klasöründe kodun tutulması gibi bir güçlükten başka bir şey değildir. Geçerli kopyayı kullanmak bana tamamen şeffaf, ancak sürüm yok. (Senkronizasyon da ağrıyor çünkü sık sık dizüstü bilgisayarımı eve döndükten günler sonra açmıyorum.)Dropbox tarzı svn/git/cıva ?: Ben profesyonel programcı değilim değişim ve otomatik ödeme

Bir kod tabanının otomatik olarak dosya değişikliğine (veya her birkaç dakikada bir) bağlı kalmasının bir yolu var mı? çalışmamı başka bir bilgisayardan devam ettirmek istiyorsam son sürüm

Teşekkürler!

+0

Bunu neden yapmak istersiniz? Kodunuzu değiştirdiğinizde ve yanlışlıkla bir şeyleri kırdığınızda ne olur, ancak bir hafta sonra farkedersiniz? Tüm oto-işlemleriniz boyunca geri dönecek daha büyük bir acı olacak, çünkü bu güne kadar çalıştıktan sonra işlem yapmayı hatırlamanızdan çok daha fazla sürümünüz var, IMO. – CamelBlues

+0

Daha fazlasına katmadım, @CamelBlues. Bir mesajın tamamlanmasının veya hata düzeltmesinin tamamlanması gibi, taahhüt mesajlarına eklediğiniz ek açıklamalara ve işlem yapmak için mantıksal yer seçimi yapılmasına gerek kalmadan, sürüm oluşturma neredeyse tamamen işe yaramaz. [Git otomatik taahhüt yapma] arasında –

+0

olası yinelenen (http://stackoverflow.com/questions/420143/making-git-auto-commit) – 79E09796

cevap

0

Ne yaptım, kod tabanlarımı birkaç bilgisayar arasında eşitlemek için btsync kullanıyordum. Bu, aradığım 'otomatik senkronizasyon' özelliğini oluşturur ve bana tamamen şeffaftır. (Bu, yukarıda belirtildiği gibi şişirilmiş otomatik işlemlerle ilgili sorunların da üstesinden gelir) Ancak bir ipucu: Tüm bilgisayarlarınızda veriyi eşzamanlamaya çalışmayın. Bu mümkün olsa da, benim için gereksizdi ve dosyaları senkronize etmek ve gerektiğinde işlemek ve itmek için uzaktan kumanda edebileceğiniz bir makineye repo tutmak daha iyidir. Bu şekilde, sürüm oluşturma ve otomatik olarak eşitleme (veya günlük olarak işlemeye zorlanmanız veya bilgisayarınızı kapatmanız gerektiğinde veya dizüstü bilgisayarınızı kapatmadan önce ortaya çıkan herhangi bir işlem hatasıyla uğraşmanız gerektiğinde endişelenmeniz veya endişelenmeniz gerekir) her biri, günlük olarak hatırlamak için yanlışı olan belleğe güvenmek zorundadır (benim için büyük olanı!)).

1

Dropbox, geçmişte dosyaların birkaç sürümlerini saklar. Zorlukla "sürüm oluşturma" olarak adlandırılabilir, ancak dosyaları geçmişte bir süre geri yükleyebilirsiniz. Eğer gerçekten İşleyen, ve birleştirmeye de rahatsız olamaz durumunda

, ben güzel ve otomatik olarak, dropbox'ı ile yaşıyor diye söyleyebilirim.

zamanlanmış görevi ayarlayabilirsiniz (eğer Windows üzerinde) ya da (Linux ise) Cron Job a/taahhüt yapacak her 5 dakikada itin. Ve bilgisayarınızı her başlattığınızda çekin/güncelleyin. Ancak, manuel birleştirme gerektiğinde, özellikle çekme/güncelleme sırasında, gerçekleşmesini bekleyen potansiyel bir kabus görebiliyorum. o/öğrenmek Git baş etmekten çok daha kolay ve svn daha gelişmiş olduğu gibi

Ayrıca, ben, Mercurial kullanarak öneriyorum. Bu, sürüm kontrol sisteminden biraz acı çekecek.

5

Bu sizin "projeler" ne bağlıdır.

Flashbake bilim-kurgu yazarı Cory Doctorow düzenli aralıklarla otomatik olarak onun yazma işlemini yakalamak ve sürüm istedim sonra oluşturulan

:

Her 15 dakikada, Flashbake bunu kontrol etmek sormak herhangi dosyalara bakar (I Devam eden tüm kurgularıma, benim yapılacaklar listeme, faydalı bilgiler dosyamın dosyalarına ve son kitapların tamamlanmış elektronik versiyonlarına bakıyorum ve son kontrolden sonra yapılan değişiklikleri kaydeder sistem saatine göre saat dilimi, Google'dan getirilen saat dilimindeki hava durumu ve blogunuzun RSS özet akışında altyazılarınızdaki son üç başlık ile ilgili özet bilgi ("Ben neredeyim?" Oradaki gibi ve ne düşünüyorum? "). Ayrıca bilgisayarınızın çalışma süresini de kaydeder. Gelecek bir sürüm için, müzik çalarınız tarafından en son üç şarkıya sahip olmanın eğlenceli olacağını düşünüyorum. (source)

Otomatik güncellemeler için sürüm için git ve cron dayanır (git yeterli alanı daha verimli bu uysal yapmaktır). another review'a bakmak isteyebilirsiniz. Kod here'dur.

Gerçekten, gerçekten her X dakikada bir işlem yapmak yerine dosya değiştirme algılaması yapmak istiyorsanız (veriler hakkında paranoyak olarak), something based on inotify (details - bu otomatik işlemlerin hızlı bir şekilde eklenebileceğini unutmayın).

Henüz başka seçenek (eğer karıştırmak isteyebilirsiniz böylece zorunlu olarak, otomatik tamamlama soru çözmez) dropbox'a üzerinde budala çalışan bakmaktır. Bu already been discussed here on SO var.

+0

Çok iyi cevap aşağıda kendi çözüm koymak, ama yaklaşık olarak sigara kaynak yoğun alır o kadar Inotify olduğunu ettik. İşlem, editörünüz işletim sistemine "yazma" araması yapana kadar tamamen uykuda. Tabii ki, yaptığım sıklıkta tasarruf ederseniz, bu taahhütler çabucak toplanacak, eğer istediğin buysa. –

+0

@Karl: Evet, tam olarak ne demek istedim. İyi yakalama. Bunu yansıtmak için düzenlenmiştir. – huitseeker