GitHub depolarına nasıl dosya ve klasör ekleyebilirim?


248

GitHub'da bir hesap oluşturdum - bu konuda yeniyim - ve dosya ekleme konusunda bir sorunla karşılaşıyorum. Ekledim readme.txt. Ayrıca, 3 diğer PHP dosyası ve resim içeren bir klasör var.

Dosyaları ve klasörü nasıl eklerim? Bunu denedim git pullçünkü git push origin -u masterbana bir hata gösterdi.


9
Güvenilir resmi git öğretici ? Bu çok başlangıçta kapsanmaktadır.
jweyrich

2
ProGit kitabının çevrimiçi versiyonunun ücretsiz olduğunu tavsiye ederim progit.org/book
house9

Not: Aralık 2012'den bu yana doğrudan GitHub web arayüzü üzerinden dosya oluşturabilirsiniz. Bkz aşağıda Cevabımı .
VonC

Yanıtlar:


371

Sen kullanarak dosyaları ekleyebilir git addörnek, git add README, git add <folder>/*, hattagit add *

Sonra git commit -m "<Message>"dosyaları yürütmek için kullanın

Sonunda git push -u origin masterdosyaları itmek için.

git statusDeğiştirilen dosyaların listesini veren değişiklikler çalıştırdığınızda , bunları git add *her şey için kullanarak ekleyin veya her dosyayı ayrı ayrı belirtebilir git commit -m <message>ve son olarak,git push -u origin master

Örnek - README dosyası oluşturduğunuzu varsayalım, çalışan git statussize

$ git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   README

Çalıştırın git add README, dosyalar taahhüt için hazırlanır. Sonra git statustekrar çalıştırın , size vermelidir - dosyalar eklendi ve taahhüt için hazır.

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#

nothing added to commit but untracked files present (use "git add" to track)

O zaman koş git commit -m 'Added README'

$ git commit -m 'Added README'
[master 6402a2e] Added README
  0 files changed, 0 insertions(+), 0 deletions(-)
  create mode 100644 README

Son olarak, git push -u origin masteruzak dalı masterdepoya göndermek için origin.

$ git push -u origin master
Counting objects: 4, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 267 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
To xxx@xxx.com:xxx/xxx.git
   292c57a..6402a2e  master -> master
Branch master set up to track remote branch master from origin.

Dosyalar başarıyla uzak depoya aktarıldı.

Bir Koşu git pull origin masterherhangi üst düzey değişiklikleri absorbe emin olmak için

$ git pull origin master
remote: Counting objects: 12, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 8 (delta 4), reused 7 (delta 3)
Unpacking objects: 100% (8/8), done.
From xxx.com:xxx/xxx
 * branch            master     -> FETCH_HEAD
Updating e0ef362..6402a2e
Fast-forward
 public/javascript/xxx.js |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
 create mode 100644 README

Yukarı akış değişikliklerini yerel deponuzla birleştirmek istemiyorsanız git fetch, değişiklikleri getirmek ve ardından git mergedeğişiklikleri birleştirmek için çalıştırın . ve ile git pullbirleşimidir .fetchmerge

Ben şahsen gitimmersion kullandım - Git üzerinde eğri almak için http://gitimmersion.com/ , bazı belgeler ve yardıma ihtiyacınız varsa, adım adım kılavuz


8
git add --all folder/benim için benden daha iyi çalıştıgit add folder/*
Alex

4
Bu, tüm dosya ve klasörleri özyinelemeli ekliyor mu?
Alix

git add <folder>/*yeni dosyalar da ekler.
Danijel

49

Linux ve MacOS kullanıcıları için:

  1. Öncelikle github'da havuzu (Name = RepositoryName) yapın.
  2. Terminali açın ve yeni dizini oluşturun (mkdir NewDirectory).
  3. ProjectFolder'ınızı bu yeni dizine kopyalayın.
  4. Mevcut çalışma dizinini NewDirectory olarak değiştirin.
  5. Bu komutları çalıştırın
    1. git init
    2. git add ProjectFolderName
    3. git commit -m "ilk taahhüt"
    4. git remote orijin ekle https://github.com/YourGithubUsername/RepositoryName.git
    5. git push -u başlangıç ​​ustası

20

Aralık 2012'nin başından bu yana, doğrudan GitHub'dan yeni dosyalar oluşturabileceğinizi unutmayın :

Yeni Dosya Oluştur

ProTip ™ : Yalnızca URL'yi kullanarak dosya adı alanını önceden doldurabilirsiniz. URL'nin sonuna
yazmak ?filename=yournewfile.txtdosya adı alanını adla önceden doldurur yournewfile.txt.

d


2
Resim gibi bir dosyayı nasıl yükleyebilirsiniz?
Drew Baker

@BrewBaker burada açıklanan mekanizma metin dosyası oluşturmak içindir. Resim için yine de GitHub deposunu kopyalamanız, resmi yerel olarak eklemeniz, taahhütte bulunmanız ve itmeniz gerekir.
VonC

"Doğrudan GitHub'dan yeni dosyalar oluşturma" konusundaki ipucu için teşekkürler ve +1!
zeFree

Github web arayüzünün benioku indirimleri gibi basit metin dosyaları eklemekten başka klasör eklemek için bir yol sağladığına inanmıyorum.
Devy

Bence soru, dosyaları nasıl oluşturacağınızı değil, bilgisayarınızdan YÜKLEMEYİ sormaktır.
Élektra

8

Boş bir klasör eklemek istiyorsanız, klasörünüze bir .keep dosyası ekleyebilirsiniz.

Bunun nedeni git'in klasörleri umursamamasıdır.


Tam olarak aradığım cevap.
Alexis Wilke

6

Yerel makinenizdeki havuzu kontrol etmeniz gerekir. Ardından, yerel makinenizdeki klasörü değiştirebilirsiniz.

git commit -am "added files"

Bu komut tüm dosyaları depoya teslim eder.

git push origin master

ana dalınızdaki (kullandığınız varsayım) tüm değişiklikleri uzak havuz kaynağına (bu durumda github) itecek


4

Basit çözüm:

git init
git add =A
git commit -m "your commit"
git push -u origin master

mevcut repoya klasör eklemek istiyorsanız, sonra yerel proje koduna klasör eklemek

git rm --cached ./folderName
 git add ./folderName

Daha sonra

git status
git commit -m "your commit"
git push -u origin master

2

Github'a bir dizin eklerken, dizinin "ls -a" kullanarak kaldırırsa bir .git dosyası içermediğini kontrol edin. Bir dizindeki .git dosyaları git'e bir dizin eklemeye çalıştığınızda sorunlara neden olur


0

Cevabımı buradan kontrol edin: https://stackoverflow.com/a/50039345/2647919

"VEYA, daha iyi ol ol" "sürükle ve bırak" klasörü, git tarayıcıda açılan depo üzerine.

Deponuzu web portalında açın, tüm dosyalarınızın listesini göreceksiniz. Kısa bir süre önce repoyu oluşturduysanız ve bir README ile başlattıysanız, yalnızca README listesini görürsünüz.

Yüklemek istediğiniz klasörünüzü açın. tarayıcıdaki girişi sürükleyip bırakın. Buradaki resme bakın . "


0

Windows'ta VS SSDT kullanıyorum. Bir proje başlattım ve yerel sürüm kontrolü ayarladım. Daha sonra git'i yükledim ve bir Github repo yarattım. Github'daki repo'yu aldıktan sonra URL'yi aldım ve "Github'da yayınla" düğmesine bastığımda URL'yi istediğimde VS'ye koydum.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.