2013-08-26 6 views
9

vor allem entschuldigen Sie sich für Dummy-Fragen, die ich hier werfen könnte. Es wäre schön, wenn Sie die Richtung zeigen könnten, wohin ich von hier aus gehen soll.Dummy Fragen über die Einrichtung von Git auf Amazon Cloud ec2

Ich bin völlig neu in der Versionskontrolle (sowie Git) und Cloud-System. Es kam jedoch zu dem Punkt, dass ich PHP-basierte Anwendung auf AWS EC2-Instanz entwickeln und Codes für zukünftige Entwickler einbringen muss.

Ich habe erfolgreich EC2-Instanz erstellt, die PHP/MySQL ausführen und die Domäne mit Elastic IP zuordnen. So ist die Website nun öffentlich zugänglich über Port 80.

ich auch git installiert mit $sudo yum install git und configed user.name und user.email

ich dann, gehen Sie zu Stammordner der Website (zB public_html) und Lauf ‚git init‘, die die Falte „.git“ erstellen und ich fügen Sie dann Datei „git add .“ mit und verpflichten „git commit -m ‘initial upload’

Ist das der richtige Weg zu gehen? Wäre es in Ordnung, den Projektordner auf/public_html zu haben (wo von jedem zugänglich).

Wenn oben ist ok, wo soll ich von hier aus gehen? Ich möchte Git Server auf EC2 laufen lassen, die Entwickler von ihren lokalen Maschinen (z. B. Eclipse) verbinden können, während in der Lage, die Sicherung zu halten und die verschiedenen Codes zu vergleichen.

Welches Detail soll ich den Entwicklern geben, damit sie sich mit dem Git-Server verbinden und am Projekt arbeiten können?

Ich schnelle Richtung oder wenige Schlüsselwörter, um mehr Forschung zu tun, würde helfen.

Antwort

9

Blick here für weitere Informationen über git auf Amazon EC2

Einrichtung Entwickler erlauben Sie git zu verwenden, müssen Sie ihnen nur die git-Server-URL geben.

Direkte Zitat von der Seite, die ich verlinke.

„In erster Linie müssen Sie Ihre EC2 Identität mit den ssh Authentifizierungsagenten hinzufügen. Dies verhindert Probleme mit git später, nämlich immer die Fehlermeldung‚Zugriff verweigert (publickey).‘Bei dem Versuch, eine zu tun git Push-to-EC2-Repository.

ssh-add path/to/privateEC2key.pem 

Jetzt können Sie voran gehen und das Git Repository auf der EC2 Instanz erstellen.

ssh [email protected]ostname.com 
mkdir the_project.git 
cd the_project.git 
git init --bare 

Also nicht viel los hier, wir machen nur ein leeres Repository und dann verlassen. Nun, auf der lokalen Maschine, tun Sie so etwas wie die folgende:.

cd the_project 
git init 
git add . 
git commit -m "Initial git commit message" 
git remote add origin [email protected]:the_project.git 
git config --global remote.origin.receivepack "git receive-pack" 
git push origin master 

Der 'git config' Befehl ist ein Update, das ich notwendig, um zu Push-to-EC2-Repository gefunden“

+1

Vielen Dank für Ihre Hilfe, AlekCarlsen. Ich habe den Anweisungen gefolgt und habe ein besseres Verständnis für Git und die Art, wie es jetzt funktioniert. Meine Lösung ist jetzt, das Haupt-Repo auf GitHub zu hosten und es in Entwicklungsumgebungen zu klonen, wenn dies erforderlich ist (als Entwickler). Sobald die Änderung gemacht und bereit zu gehen, werde ich alle Änderungen ziehen, um von GitHub leben. :) – Chanon

3

Der erwähnte Link von Alex gibt einen guten Ausgangspunkt, um git auf ec2 einzurichten.Aber ich habe einen etwas anderen Ansatz verfolgt, wie hier erwähnt. link. Direkte Zitate von der Seite:

"Verbindung mit SSH ohne PEM-Schlüssel": Entweder fügen Sie den privaten Schlüssel ec2 hinzu und fügen ihn als Entität in Ihrem ssh-Authentifizierungsagenten hinzu oder erstellen einen neuen ssh-Schlüssel für Ihren Benutzer und verwenden ihn Das. Schritte befolgt werden, sind:

erstellen SSH Key

Als erstes müssen Sie werden Ihrem .ssh Ordner auf dem lokalen Computer navigieren:

cd 
cd .ssh 

wenn dieser Ordner existiert nicht benutze mkdir um es zu machen.

Einmal in Ihrem ssh-Ordner auf Ihrem lokalen Rechner, der in /Users/Ihrbenutzername/.ssh sein sollte, generieren Sie Ihren Schlüssel, indem Sie Folgendes ausführen.

ssh-keygen -t rsa -b 1024 

Wenn aufgefordert, die Dateinamen eingeben die Enter-Taste id_rsa_aws zu speichern, wenn Sie dazu aufgefordert ein Passwort leer lassen einzugeben.

Führen Sie in Ihrem .ssh-Verzeichnis den folgenden Befehl aus und kopieren Sie die Ausgabe, um sie später einzufügen.

cat id_rsa_aws.pub 

Nun zu Ihnen AWS-Instanz verbinden Sie PEM Schlüssel

ssh -i path/to/yourkeyname.pem [email protected] 

Sobald

echo 'the key you copied from id_rsa_aws.pub' >> .ssh/authorized_keys 
chmod 640 .ssh/authorized_keys 
chmod 750 .ssh 

nun an, die Sie auf Ihrem Computer gehen und

cd desired directory 
git clone [email protected]:<path_to_your_just_created_git_server> 

eingeben Wenn Sind alle oben genannten Schritte korrekt? , die einzige Warnung, die Sie erhalten könnten, ist

warning: You appear to have cloned an empty repository. 

Das ist in Ordnung. Jetzt können Sie Ihren gesamten Code in das Klonverzeichnis kopieren und die folgenden Schritte ausführen:

git add . 
git commit -m "Initial commit" 
git push origin master // If working on master branch