Skip to content

maellak/git-intro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 

Repository files navigation

Εισαγωγή στο Git στα ελληνικά

TL;DR

Τρέχουμε μία φορά στην αρχή:

  1. git clone https://github.com/username/repository.git
  2. cd repository
  3. git remote add upstream https://github.com/maellak/repository.git

Βήματα που ακολουθούνται κάθε φορά που γίνονται αλλαγές:

  1. git checkout master
  2. git branch feature-a
  3. git checkout feature-a
  4. Κάνουμε τις αλλαγές μας.
  5. git add file_1 file_2 dir/file_3
  6. git commit -m 'Message of what changed'
  7. git push origin feature-a
  8. Πάμε στο GitHub και κάνουμε ένα Pull Request

Fork parent repository

Κάνουμε fork το κύριο (parent) repository μέσω του GitHub πηγαίνοντας στο https://github.com/maellak/EllakAndroidEducation και πατώντας το κουμπί Fork πάνω δεξιά. Αυτόματα θα μεταφερθούμε στο δικό μας πλέον repository. Αυτό που έγινε είναι να δημιουργηθεί ένα πανομοιότυπο με το κύριο repository που έχει τις αλλαγές μέχρι τη στιγμή που έγινε το fork.

Προσοχή. Ό,τι αλλαγές γίνουν πλέον στο parent, δε μεταφέρονται αυτόματα στο δικό μας fork, θα πρέπει κάθε τόσο να τραβάμε τις αλλαγές.

  1. Αφού γίνει το fork κάνουμε clone το δικό μας forked repository (στη σελίδα που μας πήγε πριν αυτόματα):
git clone https://github.com/username/EllakAndroidEducation.git
  1. Πάμε στο directory που κατέβηκε:
cd EllakAndroidEducation
  1. Ορίζουμε το κύριο repository ως remote ώστε αργότερα να μπορούμε να πάρουμε τις αλλαγές:
git remote add upstream https://github.com/maellak/EllakAndroidEducation.git
  1. Φτιάχνουμε νέο branch με ένα περιγραφικό όνομα:
git branch add-activity-tade
  1. Αλλάζουμε στο νέο branch:
git checkout add-activity-tade

Μπορούμε να δούμε ότι είμαστε στο σωστό branch δίνοντας git branch και βλέποντας το αστεράκι στο σωστό branch.

  1. Κάνουμε τις αλλαγές μας.
  2. Βλέπουμε το status με git status.
  3. Βλέπουμε τις αλλαγές με git diff.
  4. Προσθήκη στην staging area του Git:
git add file1 file2 dir/file3
  1. Commit τις αλλαγές:
git commit -m 'Make useful changes'

Προσοχή: Το commit message να είναι κάτι περιγραφικό, όχι πάνω από 70 χαρακτήρες.

  1. Push τις αλλαγές στο GitHub:
git push origin feature-a

όπου feature-a το branch που δημιουργήσαμε.

  1. Πάμε στο GitHub στο repository μας και κάνουμε Pull Request στο parent repository.

Pull Requests

Συγχρονισμός repository

Από τη στιγμή που συνεργαζόμαστε πολλά άτομα πάνω στο ίδιο project, πρέπει το δικό μας repository να είναι πάντα συγχρονισμένο με το κύριο (parent) ώστε να έχουμε τοπικά τις αλλαγές που έχουν γίνει από τους άλλους.

  1. Ανοίγουμε ένα terminal (για Windows το Git Shell) και πάμε στον κατάλογο όπου είναι η android εφαρμογή, πχ.
cd /home/maellak/EllakAndroidEducation
  1. Δίνουμε git remote -v. Το αποτέλεσμα θα πρέπει να περιέχει:
origin  https://github.com/username/EllakAndroidEducation.git (fetch)
origin  https://github.com/username/EllakAndroidEducation.git (push)
upstream  https://github.com/maellak/EllakAndroidEducation.git (fetch)
upstream  https://github.com/maellak/EllakAndroidEducation.git (push)

Αν δεν υπάρχει το upstream, δίνουμε:

git remote add upstream https://github.com/maellak/EllakAndroidEducation.git
  1. Κάνουμε checkout το master branch όπου υπάρχει ο νεότερος κώδικας από τον οποίο θα δουλέψουμε στο εξής. Για να γίνει αυτό θα πρέπει οι ήδη υπάρχουσες αλλαγές να είναι commited. Διαφορετικά δίνουμε το git stash το οποίο αποθηκεύει τις αλλαγές προσωρινά σε ένα stack.
git stash
git checkout master
git pull upstream master

Αν δουλεύατε στο master branch σας, ενδέχεται να υπάρχουν διενέξεις (conflicts). Πριν προχωρήσετε πρέπει να επιλυθούν (resolve). Δείτε έναν οδηγό.

Tutorials

About

Intro to Git in ελληνικά

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published