Skip to content

Commit c4f33bd

Browse files
Stefan Caraimanmateimicu
Stefan Caraiman
authored andcommitted
Add CONTRIBUTING.md details
Adds a short how to contribute.
1 parent bdc1b1e commit c4f33bd

File tree

1 file changed

+115
-0
lines changed

1 file changed

+115
-0
lines changed

CONTRIBUTING.md

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
# Cum să contribui
2+
3+
Pentru a contribui va trebui sa faceți in primul rand un *fork* al depozitului de cod.
4+
Pentru acest lucru va trebui să accesați cu ajutorul unui browser web [pagina depozitului de cod][0] și să apăsați pe butonul **Fork** situat în partea dreapta sus a paginii.
5+
6+
![Fork al depozitului de cod alexcoman/labs](https://teaching.alexcoman.com/img/git-propunerea-unei-solutii/01-fork.png)
7+
8+
## Elaborarea soluției
9+
10+
În acest moment aveți la dispoziție toate resursele necesare pentru a putea trece la elaborarea soluției pentru problemele propuse în cadrul laboratorului.
11+
12+
Mai jos puteți găsi o secvență posibilă de pași pe care *Tuxy Pinguinescu* (cu numele de utilizator *tuxy_pinguinescu* pe GitHub) ar putea să îi urmeze pentru a propune o soluție.
13+
14+
1. Va alege un director de lucru cât mai ușor de regăsit pentru următoarele laboratoare.
15+
16+
```bash
17+
~ $ cd ~/work/facultate/anul-2/semestrul-2/tweb
18+
```
19+
20+
2. Va face o copie locală a depozitului de cod
21+
22+
```bash
23+
~ $ git clone https://github.com/tuxy_pinguinescu/labs
24+
```
25+
26+
3. Va actualiza directorul de lucru
27+
```bash
28+
cd labs
29+
```
30+
31+
4. Se va asigura că *fork*-ul său conține ultima versiune a codului
32+
```bash
33+
~ $ # Adăugăm o referință către depozitul de cod sursă
34+
~ $ git remote add upstream https://github.com/alexcoman/labs
35+
36+
~ $ # Ne poziționăm pe branch-ul `master`
37+
~ $ git checkout master
38+
39+
~ $ # Obținem ultimile modificări din cadrul depozitului de cod sursă
40+
~ $ # upstream - numele remote-ului pe care l-am adăugat
41+
~ $ # master - branch-ul care ne interesează
42+
~ $ git pull upstream master
43+
44+
~ $ # Actualizăm informațiile din cadrul fork-ului nostru
45+
~ $ git push origin master
46+
```
47+
48+
5. Va adăuga un *branch* nou special pentru acest laborator
49+
```bash
50+
git checkout -b tweb/laborator-html
51+
```
52+
53+
6. Se va asigura că structura de directoare pentru soluțiile sale există(numele folder-ului de soluții va fi de tipul prenume_nume)
54+
```bash
55+
mkdir -p web/solutii/tuxy_pinguinescu
56+
```
57+
58+
7. Toate fișierele cu rezolvările vor fi plasate în directoarele corespunzătoare
59+
60+
## Cum să vă propuneți soluția
61+
62+
După redactarea fișierelor ce reprezintă soluția pentru unul dintre exercițiile propuse în cadrul unui laborator va trebui să încapsulați acele modificări în cadrul unui *commit*.
63+
64+
Pentru început trebuie să selectați și să adăugați toate modificările care vă interesează.
65+
66+
```bash
67+
~ $ git status # pentru a vedea starea curentă a depozitului de cod
68+
~ $ git add fișier # pentru fiecare fișier pe care dorim să îl adăugăm
69+
~ $ git status # pentru a verifica că toate resursele pe care le dorim sunt prezente
70+
```
71+
72+
Un exemplu de rezultat al comenzilor de mai sus ar putea fi:
73+
74+
```bash
75+
On branch tweb/laborator-html
76+
Changes to be committed:
77+
(use "git reset HEAD <file>..." to unstage)
78+
79+
new file: solutii/tuxy_pinguinescu/README.md
80+
new file: solutii/tuxy_pinguinescu/blog/articole/bine-ati-venit.html
81+
new file: solutii/tuxy_pinguinescu/blog/articole/index.html
82+
new file: solutii/tuxy_pinguinescu/blog/articole/retele-de-calculatoare/index.html
83+
new file: solutii/tuxy_pinguinescu/blog/articole/retele-de-calculatoare/modelul-osi.html
84+
new file: solutii/tuxy_pinguinescu/blog/articole/tehnologii-web/index.html
85+
new file: solutii/tuxy_pinguinescu/blog/articole/tehnologii-web/prezentare-css.html
86+
new file: solutii/tuxy_pinguinescu/blog/articole/tehnologii-web/prezentare-html.html
87+
new file: solutii/tuxy_pinguinescu/blog/contact.html
88+
new file: solutii/tuxy_pinguinescu/blog/despre.html
89+
new file: solutii/tuxy_pinguinescu/blog/index.html
90+
```
91+
92+
După ce am adăugat toate modificările pe care le dorim putem să le încapsulăm într-un commit folosind următoarea comandă:
93+
94+
```
95+
~ $ git commit -m "Mesajul pe care dorim să îl atașăm acestor modificări"
96+
```
97+
98+
Pentru a urca aceste modificări în cadrul depozitului de cod de pe Github puteți folosi comanda `git push`.
99+
100+
```bash
101+
# origin - este referința către fork-ul nostru
102+
# tweb/laborator-html - este numele branch-ului în cadrul căruia am redactat soluția
103+
~ $ git push origin tweb/laborator-html
104+
```
105+
106+
După ce ați trimis modificările propuse către fork-ul vostru, va trebui să deschideți un *Pull request* către [depozitul de cod sursă][0].
107+
108+
Pentru a face acest lucru va trebui să accesați pagina destinată branch-urilor din cadrul depozitului vostru de cod.
109+
Pentru Tuxy Pinguinescu această pagini este `https://github.com/tuxy_pinguinescu/labs/branches`.
110+
111+
În cadrul acestei pagini vor fi afișate toate *branch*-urile existente în cadrul depozitului vostru de cod cu o serie de acțiuni pentru fiecare dintre ele. În cazul nostru acțiunea care ne interesează este **New pull request**.
112+
113+
![New pull request](https://teaching.alexcoman.com/img/git-propunerea-unei-solutii/02-new-pull-request.png)
114+
115+
[0]: https://github.com/alexcoman/labs

0 commit comments

Comments
 (0)