Wie füge ich Dateien und Ordner zu GitHub-Repos hinzu?

248

Ich habe ein Konto auf GitHub erstellt - ich bin neu darin - und ich habe ein Problem beim Hinzufügen von Dateien. Ich habe hinzugefügt readme.txt. Außerdem habe ich 3 andere PHP-Dateien und einen Ordner mit Bildern.

Wie füge ich die Dateien und den Ordner hinzu? Ich habe es mit versucht, git pullweil git push origin -u mastermir ein Fehler angezeigt wurde.

Adnan
quelle
9
Haben Sie das offizielle Git-Tutorial ausprobiert ? Dies wird gleich zu Beginn behandelt.
Jweyrich
2
Ich empfehle das Buch ProGit die Online-Version ist kostenlos progit.org/book
house9
Hinweis: Seit Dezember 2012 können Sie Dateien direkt über die GitHub-Weboberfläche erstellen. Siehe meine Antwort unten .
VonC

Antworten:

371

Sie können Dateien mit hinzufügen git add, beispielsweise git add README, git add <folder>/*oder auchgit add *

Verwenden Sie dann git commit -m "<Message>", um Dateien festzuschreiben

Endlich git push -u origin masterDateien pushen.

Wenn Sie Änderungen vornehmen , laufen git statusdie Sie die Liste der Dateien geändert gibt, fügen Sie sie mit git add *für alles oder können Sie jede Datei einzeln angeben, git commit -m <message>und schließlich,git push -u origin master

Beispiel - sagen Sie eine Datei README erstellt, Laufen git statusgibt Ihnen

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

Ausführen git add README, die Dateien werden zum Festschreiben bereitgestellt. Führen Sie dann git statuserneut aus, es sollte Ihnen geben - die Dateien wurden hinzugefügt und sind bereit zum Festschreiben.

$ 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)

Dann renne 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

Zum Schluss git push -u origin masterden Remote-Zweig masterfür das Repository verschieben 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 [email protected]:xxx/xxx.git
   292c57a..6402a2e  master -> master
Branch master set up to track remote branch master from origin.

Die Dateien wurden erfolgreich in das Remote-Repository übertragen.

Führen Sie a aus, git pull origin masterum sicherzustellen, dass Sie alle vorgelagerten Änderungen übernommen haben

$ 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

Wenn Sie die Upstream-Änderungen nicht mit Ihrem lokalen Repository zusammenführen möchten, führen Sie sie aus git fetch, um die Änderungen abzurufen und anschließend git mergedie Änderungen zusammenzuführen. git pullist nur eine Kombination von fetchund merge.

Ich habe gitimmersion - http://gitimmersion.com/ persönlich verwendet , um mich über git zu informieren. Dies ist eine Schritt-für-Schritt-Anleitung, wenn Sie Dokumentation und Hilfe benötigen

Erste Null
quelle
8
git add --all folder/arbeitete besser für mich als ich alsgit add folder/*
Alex
4
Fügt das alle Dateien und Ordner rekursiv hinzu?
Alix
git add <folder>/*fügt auch neue Dateien hinzu.
Danijel
49

Für Linux- und MacOS-Benutzer:

  1. Erstellen Sie zuerst das Repository (Name = RepositoryName) auf github.
  2. Öffnen Sie das Terminal und erstellen Sie das neue Verzeichnis (mkdir NewDirectory).
  3. Kopieren Sie Ihren ProjectFolder in dieses neue Verzeichnis.
  4. Ändern Sie das aktuelle Arbeitsverzeichnis in NewDirectory.
  5. Führen Sie diese Befehle aus
    1. git init
    2. git add ProjectFolderName
    3. git commit -m "erstes Commit"
    4. git remote add origin https://github.com/YourGithubUsername/RepositoryName.git
    5. Git Push -u Origin Master
Ankit Bhatia
quelle
20

Beachten Sie, dass Sie seit Anfang Dezember 2012 neue Dateien direkt aus GitHub erstellen können :

Neue Datei erstellen

ProTip ™ : Sie können das Dateinamenfeld nur mit der URL vorab ausfüllen.
Wenn Sie ?filename=yournewfile.txtam Ende der URL eingeben, wird das Feld Dateiname mit dem Namen vorab ausgefüllt yournewfile.txt.

d

VonC
quelle
2
Wie können Sie eine Datei wie ein Bild hochladen?
Drew Baker
@DrewBaker Der hier beschriebene Mechanismus dient zum Erstellen von Textdateien. Für ein Bild müssten Sie immer noch ein GitHub-Repo klonen, das Bild lokal hinzufügen, festschreiben und pushen.
VonC
Vielen Dank und +1 für den Tipp "Neue Dateien direkt aus GitHub erstellen"!
ZeFree
Ich glaube nicht, dass die Github-Web-Benutzeroberfläche eine Möglichkeit bietet, andere Ordner als einfache Textdateien wie Readme-Markdowns hinzuzufügen.
Devy
Ich denke, die Frage ist, wie man Dateien von Ihrem Computer hochlädt, nicht wie man Dateien erstellt.
Élektra
8

Wenn Sie einen leeren Ordner hinzufügen möchten, können Sie Ihrem Ordner eine '.keep'-Datei hinzufügen.

Dies liegt daran, dass git sich nicht um Ordner kümmert.

Gautier
quelle
Genau die Antwort, nach der ich gesucht habe.
Alexis Wilke
6

Sie müssen das Repository auf Ihrem lokalen Computer auschecken. Dann können Sie diesen Ordner auf Ihrem lokalen Computer ändern.

git commit -am "added files"

Dieser Befehl schreibt alle Dateien in das Repo.

git push origin master

Dadurch werden alle Änderungen in Ihrem Hauptzweig (von denen ich annehme, dass Sie ihn verwenden) auf den Remote-Repository-Ursprung (in diesem Fall Github) übertragen.

Gevious
quelle
4

Einfache Lösung:

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

Wenn Sie einen Ordner zu einem vorhandenen Repo hinzufügen möchten, fügen Sie einen Ordner zum lokalen Projektcode hinzu

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

nachdem

git status
git commit -m "your commit"
git push -u origin master
Shashwat Gupta
quelle
2

Wenn Sie ein Verzeichnis zu github hinzufügen, überprüfen Sie mit "ls -a", ob das Verzeichnis keine .git-Datei enthält, wenn es entfernt wird. Git-Dateien in einem Verzeichnis verursachen Probleme, wenn Sie versuchen, dieses Verzeichnis in Git hinzuzufügen

Matt
quelle
0

Überprüfen Sie meine Antwort hier: https://stackoverflow.com/a/50039345/2647919

"ODER, noch besser nur das" Ziehen und Ablegen "des Ordners in Ihr Repository, das im Git-Browser geöffnet wurde.

Öffnen Sie Ihr Repository im Webportal. Sie sehen die Liste aller Ihrer Dateien. Wenn Sie das Repo erst kürzlich erstellt und mit einer README-Datei gestartet haben, wird nur die README-Liste angezeigt.

Öffnen Sie Ihren Ordner, den Sie hochladen möchten. Ziehen Sie die Liste im Browser per Drag & Drop. Sehen Sie das Bild hier . "

RavenReema
quelle
0

Ich verwende VS SSDT unter Windows. Ich habe ein Projekt gestartet und die lokale Versionskontrolle eingerichtet. Ich habe später git installiert und ein Github-Repo erstellt. Sobald ich mein Repo auf Github hatte, griff ich nach der URL und fügte sie in VS ein, als ich nach der URL gefragt wurde, als ich auf die Schaltfläche "In Github veröffentlichen" klickte.

Cromastro
quelle