uVersion
Türkçe
İndir →

Wiki

Mevcut bir projeyi yükleme

Diskinizde zaten bulunan bir Unreal projesini uVersion altına almak: klasörü yerinde başlatmak, hariç tutmaları denetlemek, ardından Pending sekmesinden bir checkin. İlk yüklemenin tuzaklarıyla birlikte.

Diskinizde bir Unreal projeniz var ve onu uVersion altına almak istiyorsunuz. Bu sayfa tam olarak bu durumu kapsar: dosyalarınız yerinden oynamaz, klasör yerinde sunucuya bağlanır, ardından yüklenir.

Aksine, sunucuda zaten oluşturulmuş boş bir depodan yola çıkıyorsanız, ihtiyacınız olan bir klondur, bu sayfa değil.

Başlamadan önce

Unreal editörünü kapatın Bir yüklemenin sonunda, yüklenen dosyalar diskte yeniden salt okunur duruma geçer. Oysa uVersion eklentisi, editör açıldığında, düzenlenebilir kalan her varlığı otomatik olarak rezerve eder: işlem sırasında editör açıksa, az önce yüklediğiniz şey üzerinde hemen yeniden kilitler alır. Kilitler kendiliğinden hiçbir zaman sona ermediğinden, onları farkında olmadan elinizde tutmuş olursunuz.

Ayrıca bildireceğiniz klasörün deponun gerçekten istenen kökü olduğunu denetleyin. .uproject dosyası bu kökün en çok üç düzey altında bulunmalıdır, aksi hâlde istemci projeyi bir Unreal projesi olarak tanımaz ve Unreal paneli görünmez kalır.

Klasörü başlatma

1. Open Repository penceresini açma

Kenar çubuğunda Workspace'i açın, ardından Open Repository'e (ya da sekme çubuğundaki "+"ya) tıklayın. Açılan pencere önce mevcut bir depoyu klonlamaya yarar: burada istediğiniz bu değil. En aşağıya kadar inin, depo listesinin ve Open Local Repository...'nin altında, New Repository from a Project Folder...'a tıklayın.

Bu düğmeyi görmüyor musunuz? Yalnızca admin rolü için görünür, çünkü sunucuda bir depo oluşturur. Bkz. Bir depo oluşturma.
Open Repository penceresinin altı: Download files after clone kutusu, Open Local Repository düğmesi ve altında New Repository from a Project Folder düğmesi.

2. Proje kökünü seçme

Select your project folder to create a new repository başlıklı bir klasör seçici açılır. Projenizin kökünü, yani .uproject'i içeren klasörü ya da onu içeren klasörü seçin. Hiçbir şey kopyalanmaz ya da taşınmaz: bu klasör olduğu yerde kalacaktır.

3. Depoyu adlandırma ve oluşturma

Form yeni bir iletişim kutusunda değil, az önce tıkladığınız düğmenin yerinde, pencerenin içinde görünür. Seçilen yolu yeniden anımsatır ve klasör adıyla önceden doldurulmuş bir Repository name alanı sunar. Gerekirse ayarlayın, ardından Create & Open'a tıklayın. Ad boş olduğu sürece düğme etkin olmaz ve bu ad tüm sunucuda benzersiz olmalıdır.

Open Repository penceresindeki yerinde oluşturma formu: seçilen klasörün yolu bir satırda, klasör adıyla önceden doldurulmuş Repository name alanı, Create and Open ve Cancel düğmeleri.

İstemci o zaman dört şey yapar, başka hiçbir şey yapmaz:

  • sunucuda depoyu oluşturur;
  • projenize bir .uversion/ klasörü yazar; bu klasör depoyu, sunucunun adresini ve çalışma alanının sahibi hesabı belleğe alır;
  • bir .uversionignore dosyası yazar, yalnızca zaten bir tanesi yoksa;
  • hiçbir şey indirmez ve dosyalarınızın hiçbirine dokunmaz.
Bu klasör sizin olur Klasörü başlatan hesap onun sahibi olur ve komut satırı bundan sonra bu klasörde bu kimlik altında iş görür. Bir iş arkadaşı klasörünüzü kopyalamamalı: kendi tarafında depoyu klonlamalıdır, yoksa This workspace belongs to ... iletisini alır.

Hariç tutmaları denetleme

Şimdi tam sırası ve bunu sonradan yapmaktan çok daha basit. Kökteki .uversionignore dosyasını açın: asla yüklenmeyecek olanları listeler. Varsayılan olarak konulan şablon, bir Unreal projesinin kendiliğinden yeniden ürettiklerini, özellikle Binaries/, Build/, DerivedDataCache/, Intermediate/, Saved/ ve Packages/'i ve geliştirme ortamlarının proje dosyalarını zaten dışarıda bırakır.

Değiştirilemeyen iki kural vardır ve onları bilmek iyi olur:

  • Plugins/uVersion her zaman hariç tutulur. Unreal eklentisi hiçbir zaman sürümlenmez: her makine KENDİ motoruna karşılık gelen sürümü masaüstü istemci aracılığıyla kurar. Onu depoda bulunmuyor görmek normaldir.
  • Tam olarak ThirdParty adlı bir klasör içeren bir yol, yazdığınız kural ne olursa olsun asla hariç tutulmaz. Üçüncü taraf kitaplıklarınız bu yüzden her zaman yukarı gider.

Packages/ hariç tutulduğu için paketlenmiş bir yapı asla depoya gitmez: sürümleme yoluyla değil, yapı yayımlama işleviyle dağıtılır.

Yükleme

4. Files sekmesinde durumu görme

Tüm projeniz orada untracked durumuyla görünür: sizde var, henüz sunucuda yok. Az önce başlatılmış bir klasörün olağan durumudur. Ağacın üstündeki sayaç rozeti aynı şeyi özetler (N local only), Rev sütunu her yerde v0 gösterir ve Pending sekmesi aynı sayıdaki bir rozeti şimdiden taşır: istemci dosyalarınızı kendiliğinden saptadı, elle "ekleyecek" bir şey yok.

Başlatmanın hemen ardından Files sekmesi: ağacın üstünde N local only rozeti, her satırda untracked durumu, v0'daki Rev sütunu ve Pending sekmesindeki aynı sayıda rozet.

5. Pending sekmesini açma

Tüm dosyalarınız zaten oradadır, add olarak işaretli, Default değişiklik listesine yerleştirilmiş. Soldaki sütun neyin yukarı gideceğinin ağaç yapısını, sağdaki panel satır başına bir Diff ve bir Remove ile düz listeyi gösterir. Burada yalnızca asla sürümlemek istemediğinizi çıkarın: "bu klasörün burada işi yok" sorusunun doğru yanıtı .uversionignore'da bir kuraldır, satır satır bir Remove değil.

İlk yüklemede Pending sekmesi: solda dosyaların ağaç yapısı, sağda her dosyanın add işaretli olduğu Default değişiklik listesi, satır başına Diff ve Remove düğmeleri, Describe your changes alanı ve Checkin all düğmesi.

6. Açıklama, ardından Checkin all

Describe your changes... alanına bir ileti yazın: zorunludur, alan boş olduğu sürece Checkin all düğmesi etkin olmaz. "Projenin ilk yüklemesi" gayet yeterlidir. Ardından Checkin all (N)'e tıklayın.

Default değişiklik listesinin paneli: ilk yükleme iletisiyle doldurulmuş Describe your changes alanı, dosya sayısıyla birlikte etkin Checkin all düğmesi.
Yükleme sizin için rezerve eder Checkin, yüklediği dosyaların kilitlerini kendisi koyar, ardından revizyon doğrulanınca onları serbest bırakır. İlk yüklemede bunun bir sonucu yoktur, bu dosyalarda yalnız sizsiniz. Zaten paylaşılan bir depoda, bir başkası tarafından rezerve edilmiş bir dosya yüklemeyi başarısız kılar: aşağıdaki tuzaklara bakın.

Yükleme sonra kendiliğinden ilerler, başlık çubuğunda gösterilen birkaç evrede: parçalama, sunucunun zaten sahip olduğunun denetimi, aktarım, ardından doğrulama. Bu sırada sekme değiştirebilirsiniz, ilerleme takip eder. Kesintiye uğrayan bir aktarım her şeye baştan başlamak yerine kaldığı yerden devam eder. Sonunda, yüklenen dosyalar salt okunur duruma geçer: bu, onların sunucuda olduğunun ve değiştirmek için rezerve edilmeleri gerektiğinin işaretidir.

İlk yüklemenin tuzakları

Yükleme düğmesini Files'ta arıyorum

Orada değil. Files sekmesi durumu gösterir ve tekil eylemlere yarar; yükleme Pending sekmesinden yapılır, orada izlenmeyen ya da değiştirilmiş her dosya kendiliğinden görünür. Pending bir rozet gösteriyorsa, yüklenecek bir şey var demektir.

"Failed to acquire locks for N file(s)"

Bir ya da birden çok dosya zaten bir başkası tarafından rezerve edilmiş ve yüklemenin tamamı iptal edilir, yalnızca ilgili dosyalar değil. Onları kimin elinde tuttuğunu öğrenmek için bekleyen rezervasyonlar sekmesine bakın ve onları serbest bırakmasını isteyin.

Seçtiğim bir dosya silme olarak gitti

Yüklenen ama aktarım anında diskte bulunmayan bir yol, bir silme olarak yorumlanır. Bu, seçimle yükleme arasında dosyaları taşırsanız ya da yeniden adlandırırsanız olur. İşlem sırasında klasörde çalışmaktan kaçının.

"This folder is already a uVersion repository"

Klasör zaten bir .uversion/ içeriyor. Onu yeniden oluşturmak yerine Open Local Repository...'yi kullanın.

Klasör reddediliyor

İstemci bazı konumları bilerek reddeder: bir diskin kökü, bir sistem klasörü, bir otomatik başlatma klasörü ya da göreli bir yol. Sıradan bir çalışma klasörü seçin.

Ve sonra