Differences

This shows you the differences between two versions of the page.

Link to this comparison view

so:teme:folosire-gitlab [2019/02/25 10:17]
mbarbulescu [Mic tutorial de folosire git]
so:teme:folosire-gitlab [2022/03/11 20:00] (current)
ionut.mihalache1506
Line 78: Line 78:
   - Adăugați URL-ul specific repo-ului de teme de SO ce va conține scheletele de cod pentru fiecare temă și testele:   - Adăugați URL-ul specific repo-ului de teme de SO ce va conține scheletele de cod pentru fiecare temă și testele:
     - click pe ''​Import existing repository by URL''​     - click pe ''​Import existing repository by URL''​
-    - adăugați link-ul https://​github.com/​systems-cs-pub-ro/​so-assignments.git+    - adăugați link-ul https://​github.com/​systems-cs-pub-ro/​so.git 
 +    - în directorul assignments vor fi toate fișierele de care aveți nevoie
   - Click ''​Create project''​.   - Click ''​Create project''​.
   - După ce proiectul a fost creat, selectați tab-ul ''​Members''​ din cadrul acestui proiect (left side)   - După ce proiectul a fost creat, selectați tab-ul ''​Members''​ din cadrul acestui proiect (left side)
-    - adăugați ​următorii ​useri: Mihai Bărbulescu (3172), Adrian Șendroiu (1701), Răzvan Tudor Crainea, Vladimir Diaconescu, Costin Lupu, Iustin Dumitrescu, Alexandru Jercăianu, George Muraru, ​Alex MoregaBogdan Purcăreață (2086+    ​<​hidden>​- adăugați useri corespunzători: Mihai Bărbulescu (3172), Adrian Șendroiu (1701), Răzvan Tudor Crainea, George Muraru, ​Adrian-Mirel LUŢANGabriel BERCARU (78505), Ionuț MIHALACHE (87724)</​hidden>​ 
-    - dați-le dreptul de access ''​Reporter''​+    - adăugați useri corespunzători(cineva din subechipa de teme pe baza username-ului de pe Microsoft Teams
 +    - dați-le dreptul de access ''​Maintainer''​
     - click pe ''​Add users to project''​     - click pe ''​Add users to project''​
  
Line 97: Line 99:
  
 Dacă aveți doar 1-multi în acest repo, pentru a adăuga 2-minishell puteți proceda astfel: Dacă aveți doar 1-multi în acest repo, pentru a adăuga 2-minishell puteți proceda astfel:
-<​code>​ +<​code ​bash
-git clone ... +git clone ... 
-cd l3-so-assignments +cd l3-so-assignments 
-mkdir -p 2-minishell/​ +mkdir -p 2-minishell/​ 
-cd 2-minishell/​ +cd 2-minishell/​ 
-wget http://​ocw.cs.pub.ro/​courses/​_media/​so/​teme/​2-skel-linux.zip +wget http://​ocw.cs.pub.ro/​courses/​_media/​so/​teme/​2-skel-linux.zip 
-unzip 2-skel-linux.zip +unzip 2-skel-linux.zip 
-rm -fr 2-skel-linux.zip +rm -fr 2-skel-linux.zip 
-wget http://​elf.cs.pub.ro/​so/​res/​teme/​tema2-checker-lin.zip +wget http://​elf.cs.pub.ro/​so/​res/​teme/​tema2-checker-lin.zip 
-unzip tema2-checker-lin.zip # testele sunt dezarhivate în folderul tema2-checker-lin/​ +unzip tema2-checker-lin.zip # testele sunt dezarhivate în folderul tema2-checker-lin/​ 
-rm -fr tema2-checker-lin.zip +rm -fr tema2-checker-lin.zip 
-mkdir checker-lin +mkdir checker-lin 
-mv tema2-checker-lin/​* checker-lin/​ +mv tema2-checker-lin/​* checker-lin/​ 
-rmdir tema2-checker-lin +rmdir tema2-checker-lin 
-cd ../ +cd ../ 
-git add 2-minishell/​ +git add 2-minishell/​ 
-git commit -m "add Linux skeleton and tests"​ +git commit -m "add Linux skeleton and tests"​ 
-git push+git push
 </​code> ​ </​code> ​
  
Line 186: Line 188:
 Este important să setăm numele și email-ul nostru în git deoarece fiecare commit va conține aceste informații. Pentru a face acest lucru urmărim următorii pași: Este important să setăm numele și email-ul nostru în git deoarece fiecare commit va conține aceste informații. Pentru a face acest lucru urmărim următorii pași:
  
-<​code>​ +<​code ​bash
-$ git config --global user.name "Mr. Perfect"​ +student@vagrant:​~$ git config --global user.name "Mr. Perfect"​ 
-$ git config --global user.email mr@perfect.com+student@vagrant:​~$ git config --global user.email mr@perfect.com
 </​code>​ </​code>​
  
Line 195: Line 197:
 === Simple tutorial === === Simple tutorial ===
  
-Acum că avem numele și email-ul setate, putem trece mai departe. Primul pas în lucrul ​cum git este să inițializăm un repository local în directorul în care vom păstra toate fișierele din temă.+Acum că avem numele și email-ul setate, putem trece mai departe. Primul pas în lucrul ​cu git este să inițializăm un repository local în directorul în care vom păstra toate fișierele din temă.
  
-<​code>​ +<​code ​bash
-$ git init+student@vagrant:​~$ git init
 </​code>​ </​code>​
  
 Vrem să asociem repository-ul nostru local cu unul pe server. Fie că folosim Gitlab, Github, Bitbucket sau orice altă variantă, pașii de urmat sunt neschimbați. Repository-ul precizat trebuie să existe de dinainte. Vrem să asociem repository-ul nostru local cu unul pe server. Fie că folosim Gitlab, Github, Bitbucket sau orice altă variantă, pașii de urmat sunt neschimbați. Repository-ul precizat trebuie să existe de dinainte.
  
-<​code>​ +<​code ​bash
-$ git remote add origin link_to_online_repo+student@vagrant:​~$ git remote add origin link_to_online_repo
 </​code>​ </​code>​
  
Line 213: Line 215:
 După ce am terminat de editat fișierul, îl adăugăm în repository folosind comanda ''​add''​. E util ca fiecare schimbare pe care o comitem să fie asociată cu un mesaj **scurt și la obiect** pentru a ști ulterior **exact** ce schimbare a fost produsă cu acel commit. După ce am terminat de editat fișierul, îl adăugăm în repository folosind comanda ''​add''​. E util ca fiecare schimbare pe care o comitem să fie asociată cu un mesaj **scurt și la obiect** pentru a ști ulterior **exact** ce schimbare a fost produsă cu acel commit.
  
-<​code>​ +<​code ​bash
-$ touch .gitignore +student@vagrant:​~$ touch .gitignore 
- +# evităm adăugarea fișierelor obiect 
-$ echo "​*.o"​ >> .gitignore ​# evităm adăugarea fișierelor obiect +student@vagrant:​~$ echo "​*.o"​ >> .gitignore 
- +student@vagrant:​~$ git add .gitignore 
-$ git add .gitignore +student@vagrant:​~$ git commit -m "added .gitignore file to repo"
- +
-$ git commit -m "added .gitignore file to repo"+
 </​code>​ </​code>​
  
 Pentru a publica schimbările locale și pe server, folosim comanda ''​push''​. Pentru a publica schimbările locale și pe server, folosim comanda ''​push''​.
  
-<​code>​ +<​code ​bash
-$ git push origin master+student@vagrant:​~$ git push origin master
 </​code>​ </​code>​
  
Line 246: Line 246:
  
 Este bine ca după fiecare pas enumerat să salvăm versiunea de cod din mai multe motive: Este bine ca după fiecare pas enumerat să salvăm versiunea de cod din mai multe motive:
-  - putem, din neatenție, oboseală sau grabă, să stricăm ce avem până în momentul de față și să ne vină prea greu să revenim la varianta bună de cod +  - Putem, din neatenție, oboseală sau grabă, să stricăm ce avem până în momentul de față și să ne vină prea greu să revenim la varianta bună de cod 
-  - organizare ​mai bună +  - Organizare ​mai bună 
-  - *În cazul lucrului în echipă*: se poate vedea cine a făcut o anumită modificare a codului+  - **În cazul lucrului în echipă**: se poate vedea cine a făcut o anumită modificare a codului
  
 Așadar, după fiecare pas trebuie să publicăm schimbările. Vom folosi următoarele comenzi: Așadar, după fiecare pas trebuie să publicăm schimbările. Vom folosi următoarele comenzi:
  
-<​code>​ +<​code ​bash
-$ git add changed_file1 changed_file2 ​# toate fișierele modificate +# toate fișierele modificate 
-$ git commit -m "first 5 tests working" ​# să zicem că am trecut de primele 5 teste  +student@vagrant:​~$ git add changed_file1 changed_file2 
-$ git push origin master+# să zicem că am trecut de primele 5 teste  
 +student@vagrant:​~$ git commit -m "first 5 tests working"​ 
 +student@vagrant:​~$ git push origin master
 </​code>​ </​code>​
  
Line 262: Line 264:
 Am continuat cu rezolvarea temei și mi-am dat seama că ceva nu e în regulă și aș vrea să revin la o versiunea în care mergeau doar primele 5 teste. Vom folosim mai întâi comanda git log Am continuat cu rezolvarea temei și mi-am dat seama că ceva nu e în regulă și aș vrea să revin la o versiunea în care mergeau doar primele 5 teste. Vom folosim mai întâi comanda git log
  
-<​code>​ +<​code ​bash
-$ git log+student@vagrant:​~$ git log
 commit ca82a6dff817ec66f44342007202690a93763949 commit ca82a6dff817ec66f44342007202690a93763949
 Author: Mr. Perfect <​mr@perfect.com>​ Author: Mr. Perfect <​mr@perfect.com>​
Line 296: Line 298:
 Pentru a ne întoarce la această variantă folosim comanda: Pentru a ne întoarce la această variantă folosim comanda:
  
-<​code>​ +<​code ​bash
-$ git revert ca82a6dff817ec66f44342007202690a93763969+student@vagrant:​~$ git revert ca82a6dff817ec66f44342007202690a93763969
 </​code>​ </​code>​
  
so/teme/folosire-gitlab.1551082631.txt.gz · Last modified: 2019/02/25 10:17 by mbarbulescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0