Alıştırma - Projenizi GitHub’a yükleme

Tamamlandı

GitHub Importer'ı, komut satırını veya dış geçiş araçlarını kullanarak depoları GitHub'a aktarabilirsiniz.

GitHub İçeri Aktarıcı hakkında

Subversion, Mercurial, Team Foundation Sürüm Denetimi (TFVC) veya başka bir Git deposunda kaynak kodunuz varsa GitHub Importer'ı kullanarak bunu GitHub'a taşıyabilirsiniz. GitHub Importer, işlemeler ve düzeltme geçmişi dahil olmak üzere kaynak kod depolarını sizin için GitHub'a hızla aktaran bir araçtır.

İçeri aktarma sırasında, içeri aktardığınız sürüm denetimi sistemine bağlı olarak aşağıdaki görevlerden bazılarını gerçekleştirebilirsiniz. Git Büyük Dosya Depolama kullanmak istemiyorsanız uzak deponuzda kimlik doğrulaması gerçekleştirin, işleme yazarı atfını güncelleştirin, depoları büyük dosyalarla içeri aktarabilirsiniz veya büyük dosyaları kaldırın.

İçeri Aktarma Eylemi Subversion Mercurial TFVC Git
Uzak depoyla kimlik doğrulaması X X X X
İşleme yazarı atfı güncelleştirme X X X
Büyük dosyaları Git Büyük Dosya Depolama taşıma X X X
Deponuzdan büyük dosyaları kaldırma X X X

GitHub Importer ile depo içeri aktarma

Başka bir sürüm denetim sisteminde barındırılan bir projeniz varsa, GitHub Importer aracını kullanarak projeyi otomatik olarak GitHub'a aktarabilirsiniz. GitHub Importer tüm içeri aktarma işlemleri için uygun değildir. Örneğin, mevcut kodunuz özel bir ağda barındırılıyorsa aracımız bu koda erişemez. Bu gibi durumlarda, Git depoları için komut satırını veya diğer sürüm denetimi sistemlerinden içeri aktarılan projeler için bir dış kaynak kodu geçiş aracını kullanarak içeri aktarmanızı öneririz.

Deponuzdaki işlemeleri, içeri aktarma sırasında yazarların GitHub kullanıcı hesaplarıyla eşleştirmek isterseniz. İlk olarak, içeri aktarma işlemine başlamadan önce deponuza katkıda bulunan her kişinin bir GitHub hesabına sahip olduğundan emin olun.

Depolar ve tek tek dosyalar boyut sınırlarına tabidir. Daha fazla bilgi için GitHub'da büyük dosyalar hakkında bölümüne bakın.

Depo içeri aktarmak için şu adımları izleyin:

  1. Herhangi bir sayfanın +sağ üst köşesinde, öğesini ve ardından Depoyu içeri aktar'ı seçin.

    Screenshot of the import repository button.

  2. "Eski deponuzun kopya URL'si" altında, içeri aktarmak istediğiniz projenin URL'sini yazın.

    Screenshot of the old repository URL textbox.

  3. Depoya sahip olmak için kullanıcı hesabınızı veya bir kuruluşu seçin, ardından GitHub'daki depo için bir ad yazın.

    Screenshot of the new import repository owner name.

  4. Yeni deponun genel mi yoksa özel mi olacağını belirtin. Daha fazla bilgi için Bkz . Depo görünürlüğünü ayarlama.

    Screenshot of the new repository public or private options.

  5. Girdiğiniz bilgileri gözden geçirin ve İçeri aktarmaya başla'yı seçin.

    Screenshot of the begin import button for a new repository import.

  6. Eski projeniz parolayla korunuyorsa, bu proje için oturum açma bilgilerinizi yazın ve Gönder'i seçin.

    Screenshot of the location to input your old repository credentials importer.

  7. Eski projenizin kopya URL'sinde barındırılan birden çok proje varsa içeri aktarmak istediğiniz projeyi seçin ve ardından Gönder'i seçin.

    Screenshot of a selection of projects found at the same URL. project importer.

  8. Projeniz 100 MB'tan büyük dosyalar içeriyorsa, Git Büyük Dosya Depolama kullanarak büyük dosyaları içeri aktarıp içeri aktarmayacağınızı seçin ve ardından Devam'ı seçin.

    Screenshot of files suitable for Git LFS importer.

Depo tamamen içeri aktarıldığında bir e-posta alırsınız.

GitHub Importer ile işleme yazarı ilişkilendirmesi güncelleştiriliyor

İçeri aktarma sırasında deponuzdaki işlemeleri işleme yazarının GitHub hesabıyla eşleştirebilirsiniz. GitHub Importer, e-posta adresleri içeri aktardığınız depodaki işlemelerin yazarlarıyla eşleşen GitHub kullanıcılarını arar. Daha sonra e-posta adresini veya yazarın GitHub kullanıcı adını kullanarak bir işlemeyi yazarına bağlayabilirsiniz.

İşleme yazarlarını güncelleştirme

İşleme yazarını güncelleştirmek için şu adımları izleyin:

  1. Deponuzu içeri aktardıktan sonra, içeri aktarma durumu sayfasında Yazarları eşleştir'i seçin.

    Screenshot of the match authors button.

  2. Bilgilerini güncelleştirmek istediğiniz yazarın yanındaki Bağlan'ı seçin.

    Screenshot of the connect commit author process.

  3. Yazarın e-posta adresini veya GitHub kullanıcı adını yazın ve Enter tuşuna basın.

İşlemeleri gitHub kullanıcısına genel e-posta adresiyle dağıtma

İçeri aktarılan deponuzdaki bir işlemenin yazarının, işlemeleri yazmak için kullandığı e-posta adresiyle ilişkilendirilmiş bir GitHub hesabı varsa ve işleme e-posta adresini özel olarak ayarlamazsa. Ardından GitHub Importer, işlemeyle ilişkili e-posta adresini GitHub hesabıyla ilişkili genel e-posta adresiyle eşleştirir ve işlemeyi GitHub hesabıyla ilişkilendirir.

İşlemeleri genel e-posta adresi olmayan bir GitHub kullanıcısına dağıtma

İçeri aktarılan deponuzdaki bir işlemenin yazarı GitHub profilinde genel bir e-posta adresi ayarlamazsa veya işleme e-posta adresini özel olarak ayarlamazsa. Ardından GitHub Importer, işlemeyle ilişkili e-posta adresini GitHub hesabıyla eşleştiremeyebilir.

İşleme yazarı, e-posta adresini özel olarak ayarlayarak bu sorunu çözebilir. Daha sonra işlemeleri ile <username>@users.noreply.github.comilişkilendirilir ve içeri aktarılan işlemeler GitHub hesaplarıyla ilişkilendirilir.

E-posta adresi kullanarak işlemeleri dağıtma

Yazarın e-posta adresi GitHub hesabıyla ilişkilendirilmiyorsa, içeri aktarma işleminden sonra adresi hesabına ekleyebilir ve işlemeler doğru şekilde ilişkilendirilecektir.

Yazarın GitHub hesabı yoksa GitHub Importer, işlemelerini işlemelerle ilişkili e-posta adresine bağlar.

Komut satırını kullanarak GitHub deposunu içeri aktarma

GitHub Importer, var olan kodunuzun özel bir ağda barındırılması gibi amaçlarınıza uygun değilse, komut satırını kullanarak içeri aktarmanızı öneririz.

Başlamadan önce şunları bildiğinizden emin olun:

  • GitHub Kullanıcı adınız
  • veya git://external-host.com/user/repo.git gibi https://external-host.com/user/repo.git dış deponun kopya URL'si (etki user@ alanı adının önünde external-host.com olabilir)

Tanıtım amacıyla şunları kullanırız:

  • ext-user adlı bir dış hesap
  • Adlı bir dış Git konağı https://external-host.com
  • Ghuser adlı bir GitHub kişisel kullanıcı hesabı
  • GitHub.com üzerinde repo.git adlı bir depo

Dış deponuzu içeri aktarmak için şu adımları izleyin:

  1. GitHub'da yeni bir depo oluşturun. Dış Git deponuzu bu yeni depoya aktarırsınız.

  2. Komut satırında, dış kopya URL'sini kullanarak deponun "çıplak" bir kopyasını oluşturun. Bu komut, dosyaların düzenlenmesi için çalışma dizini olmadan verilerin tam bir kopyasını oluşturur ve tüm eski verilerin temiz ve yeni bir şekilde dışarı aktarılmasını sağlar.

    $ git clone --bare https://external-host.com/ext-user/repo.git
    #Makes a bare clone of the external repository in a local directory 
    
  3. Dallar ve etiketler gibi tüm başvuruların içeri aktarılan depoya kopyalanmasını sağlayan "yansıtma" seçeneğini kullanarak yerel olarak kopyalanan depoyu GitHub'a gönderin.

    $ cd repo.git
    $ git push --mirror https://github.com/ghuser/repo.git
    #Pushes the mirror to the new repository on GitHub.com 
    
  4. Geçici yerel depoyu kaldırın.

    $ cd ..
    $ rm -rf repo.git 
    

GitHub'a yerel olarak barındırılan kod ekleme

Bilgisayarınızda veya özel ağınızda yerel olarak depolanan mevcut kaynak kodunuz veya depolarınız varsa, terminale komut yazarak bunları GitHub'a ekleyebilirsiniz. Git komutlarını doğrudan yazarak veya GitHub CLI kullanarak.

GitHub CLI, bilgisayarınızın komut satırından GitHub'ın kullanımına yönelik bir açık kaynak aracıdır. GitHub CLI, komut satırını kullanarak Mevcut bir projeyi GitHub'a ekleme işlemini basitleştirebilir. GitHub CLI hakkında daha fazla bilgi edinmek için GitHub CLI hakkında bölümüne bakın .

GitHub CLI ile GitHub'a yerel depo ekleme

GitHub CLI ile yerel depo eklemek için şu adımları izleyin:

  1. Komut satırında projenizin kök dizinine gidin.

  2. Yerel dizini git deposu olarak başlatın.

    git init -b main
    
  3. Projenizdeki tüm dosyaları hazırlama ve işleme.

    git add . && git commit -m "initial commit"
    
  4. GitHub'da projeniz için bir depo oluşturmak için kullanın gh repo create subcommand. İstendiğinde, Var olan bir yerel depoyu GitHub'a gönder'i seçin ve deponuz için istediğiniz adı girin. Projenizin kullanıcı hesabınız yerine bir kuruluşa ait olmasını istiyorsanız, ile organization-name/project-namekuruluş adını ve proje adını belirtin.

  5. Etkileşimli istemleri izleyin. Uzakı eklemek ve depoyu göndermek için, uzakı ekleyip işlemeleri geçerli dala göndermeniz istendiğinde evet'i onaylayın.

  6. Alternatif olarak, tüm istemleri atlamak için, bayrağıyla --source deponun yolunu sağlayın ve bir görünürlük bayrağı (--public, --privateveya --internal) geçirin. Örneğin, gh repo create --source=. --public. Bayrağı olan bir uzak değer --remote belirtin. İşlemelerinizi göndermek için bayrağını --push geçirin. Olası bağımsız değişkenler hakkında daha fazla bilgi için GitHub CLI kılavuzuna bakın.

Git kullanarak GitHub'a yerel depo ekleme

Git kullanarak yerel depo eklemek için şu adımları izleyin:

  1. GitHub.com üzerinde yeni bir depo oluşturun. Hataları önlemek için yeni depoyu BENİOKU, lisans veya gitignore filesile başlatmayın. Projeniz GitHub'a gönderildikten sonra bu dosyaları ekleyebilirsiniz.

    Screenshot of new repository creation.

  2. Git Bash'i açın.

  3. Geçerli çalışma dizinini yerel projenizle değiştirin.

  4. Yerel dizini git deposu olarak başlatın.

    $ git init -b main
    
  5. Dosyaları yeni yerel deponuza ekleyin. Bu komut ayrıca bunları ilk işleme için de hazırlar.

    $ git add .
    # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
    
  6. Yerel deponuzda hazırlanan dosyaları işleyin.

    $ git commit -m "First commit"
    # Commits the tracked changes and prepares them to be pushed to a remote repository. To remove this commit and modify the file, use 'git reset --soft HEAD~1' and commit and add the file again.
    
  7. GitHub.com'un Hızlı Kurulum sayfasındaki deponuzun üst kısmında Kopyala düğmesini seçerek uzak depo URL'sini kopyalayın.

    screenshot copy remote repository url quick setup

  8. Komut isteminde uzak deponun URL'sini ekleyin. Yerel deponuz bu konuma gönderilir.

    $ git remote add origin <REMOTE_URL> 
    # Sets the new remote
    $ git remote -v
    # Verifies the new remote URL
    
  9. Yerel deponuzdaki değişiklikleri GitHub.com gönderin.

    $ git push origin main
    # Pushes the changes in your local repository up to the remote repository you specified as the origin
    

Kaynak kodu geçiş araçları

Projelerinizi GitHub'a taşımak için dış araçları kullanabilirsiniz. Projeleri Subversion, Mercurial, Team Foundation Sürüm Denetimi (TFVC) veya başka bir Git deposundan içeri aktarmak için GitHub Importer'ı kullanmanızı öneririz. Projenizi Git'e dönüştürmek için bu dış araçları da kullanabilirsiniz.

Subversion'dan içeri aktarma

Tipik bir Subversion ortamında, birden çok proje tek bir kök depoda depolanır. GitHub'da bu projelerin her biri genellikle bir kullanıcı hesabı veya kuruluş için ayrı bir Git deposuyla eşler. Aşağıdakiler durumunda Subversion deponuzun her bir bölümünü ayrı bir GitHub deposuna aktarmanızı öneririz:

  • Ortak çalışanların projenin bu bölümünü diğer bölümlerden ayrı olarak kullanıma almaları veya işlemeleri gerekir
  • Farklı bölümlerin kendi erişim izinlerine sahip olmasını istiyorsunuz

Subversion depolarını Git'e dönüştürmek için şu araçları öneririz:

Mercurial'den içeri aktarma

Mercurial depolarını Git'e dönüştürmek için hg-fast-export kullanmanızı öneririz.

TFVC'den içeri aktarma

Değişiklikleri TFVC ile Git arasında taşımak için git-tfs öneririz.

TFVC'den (merkezi sürüm denetim sistemi) Git'e geçiş hakkında daha fazla bilgi için bkz . Merkezi sürüm denetiminden Git'e geçiş.