Skip to content

romanutd/GIT-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

25 Commits
Β 
Β 
Β 
Β 

Repository files navigation

GIT - global information tracker, cvs - сontrol version system. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для осущСствлСния контроля Π·Π° всСми измСнСниями Ρ„Π°ΠΉΠ»ΠΎΠ², сохраняя ΠΏΡ€ΠΈ этом ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π΅ состояниС для сравнСния ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ°Ρ‚Π°. 

1. ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ строку Π² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Π½Π΅ΠΉ. ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ (ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ ΠΏΠ°ΠΏΠΊΡƒ) Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git init" ΠΈΠ»ΠΈ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с сайта "git clone github://path.git"

2. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π΄Ρƒ "git status для опрСдСлСния Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ состояния Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ(not tracked, staged, commited). ДобавляСм Ρ„Π°ΠΉΠ»Ρ‹ для слСТСниz Π·Π° измСнСниями ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git add" ΠΈ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ ΠΏΠ°ΠΏΠΎΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ (Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π») ΠΈΠ»ΠΈ Ссли Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ измСнСния Π²ΠΎ всСх Ρ„Π°ΠΉΠ»Π°Ρ… Ρ‚ΠΎ Ρ‡Π΅Ρ€Π΅Π· "git add ." ΠΈΠ»ΠΈ "git add <file>" для 1-Π³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠ· Ρ‚Ρ€Π΅ΠΊΠ° "git -rm cached <file>". Если Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ставим Π΅Π³ΠΎ Π² ΠΈΠ³Π½ΠΎΡ€: создаСм Ρ„Π°ΠΉΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅ΠΌ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "touch .gitignore", Π·Π°Ρ‚Π΅ΠΌ создаСм ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ„Π°ΠΉΠ» "touch pass.txt". 
Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ находимся Π² Π²Π΅Ρ‚ΠΊΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ "git checkout master". Если Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ error: pathspec, ΠΈΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ git checkout -b yourbranchname. Π’Π°ΠΊΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git status" ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ, Π½Π° ΠΊΠ°ΠΊΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅ (branch) рСпозитория ΠΌΡ‹ находимся, ΠΊΠ°ΠΊΠΈΠ΅ измСнСния ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚.

3. ДобавляСм ΠΊΠΎΠΌΠΌΠΈΡ‚ (сохранСниС ΠΈ описаниС внСсСнных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ) ΠΊ Ρ„Π°ΠΉΠ»Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git commit -m "release v.1" (m - message).
Π£Π·Π½Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git log". Π£Π·Π½Π°Ρ‚ΡŒ самыС послСдниС ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git diff". Π‘Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΊ послСднСй вСрсии "git checkout -- 'filename'". Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ самый послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° "git commit --amend"

Π›ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ измСнСния, Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π», создав Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° "git branch my_new_branch", созданная Π²Π΅Ρ‚ΠΊΠ° ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π³Π»Π°Π²Π½ΠΎΠΉ. ПослС создания ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ Π½Π° Π½Π΅Π΅ (switch): "git checkout my_new_branch" ΠΈΠ»ΠΈ для cоздания ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° сразу "git checkout -b my_new_branch" (b - branch). КаТдая Π²Π΅Ρ‚ΠΊΠ° ΠΈΠΌΠ΅Π΅Ρ‚ свою ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ "git branch -d my_new_branch".

Для обьСдинСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½ΠΎΠ²ΠΎΠΉ созданной Π²Π΅Ρ‚ΠΊΠΈ ΠΈ Π³Π»Π°Π²Π½ΠΎΠΉ (master) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° merge: 
"git chekout master" - ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΊ Π³Π»Π°Π²Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠ΅
"git merge my_new_branch" - обьСдиняСм. 

4. ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ доступ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌΡƒ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΡŽ Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…ΠΎΡ‚ΠΈΠΌ Π·Π°ΠΏΡƒΡˆΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git remote add origin https://github.com/path"
ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ "git pull origin master --allow-unrelated-histories" для соСдинСния историй 2 нСсвязанных Π΄ΠΎ этого Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²(ΠΏΠ°ΠΏΠΎΠΊ). ΠŸΡ€ΠΈ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Ρ‚Π°ΠΊΠΆΠ΅ Π² ΡΠΎΠ·Π΄Π°Π½Π½ΡƒΡŽ Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ°ΠΏΠΊΡƒ копируСтся содСрТимоС рСпозитория, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ доступ.

5. Командой "git push -u origin master"(origin это remote - удалСнная Π²Π΅Ρ‚ΠΊΠ°, origin - локальная, u - для сохранСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΡƒΡˆΠ° Π½Π° слСд. Ρ€Π°Π·) ΠΏΡƒΡˆΠΈΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Если ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория Ρ„Π°ΠΉΠ» readme.md ΡƒΠΆΠ΅ Π±Ρ‹Π» создан, Ρ‚ΠΎ слСдуСт ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ "git push -f origin master" (форсированный ΠΏΡƒΡˆ). НС стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ссли Π² Ρ„Π°ΠΉΠ»Π΅ ΡƒΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ записи Π΄Ρ€ΡƒΠ³ΠΈΡ… участников Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Если Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ошибки стоит ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½Π°Π·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΌΡ‹Π»ΠΎ: 
"git config --global user.name "username""
"git config --global user.email user@email.com"
Π»ΠΈΠ±ΠΎ ΠΏΠ΅Ρ€Π΅ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Git. 



6. Если ΠΌΡ‹ ΠΊΠ»ΠΎΠ½ΠΈΡ€ΡƒΠ΅ΠΌ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ с Π³ΠΈΡ‚Π°, Ρ‚ΠΎ для Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ слСдуСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ всС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ зависимости, ΡƒΠ·Π½Π°Ρ‚ΡŒ Π½Π΅Π΄ΠΎΡΡ‚Π°ΡŽΡ‰ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π² package.json > dependencies.

7. ΠŸΡ€ΠΈ нСобходимости ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΡΠΎΡΡ‚ΠΎΡΠ½ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ "gitk --all&" (ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ Π³ΠΈΡ‚Π°), ΡƒΠ΄Π°Π»ΠΈΠ² ΠΏΠ΅Ρ€Π΅Π΄ Π½Π΅ΠΉ Ρ„Π°ΠΉΠ» 'package-lock.json' ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠ΅ΡˆΠ°Ρ‚ΡŒ ΠΎΡ‚ΠΊΠ°Ρ‚Ρƒ, послС Ρ‡Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ копию ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° (ctrl+ins) ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git checkout commitID" (Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π°ΠΉΠ΄ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚Π° shift+ins) ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ состояния. ПослС ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±Ρ€Π°Π½Ρ‡Π΅ΠΉ состояния Π²Π°ΠΆΠ½ΠΎ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ измСнСния. Если Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ внСсСнныС измСнСния слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ "git status" с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ ΠΎ всСх измСнСниях ΠΈ ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π°ΠΌ, послС Ρ‡Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ "git checkout ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ" ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ измСнСния.

About

practice with git-bash

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages