Git

Oct, 26, 2025

🧠 Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Git

Git - это распрСдСлённая систСма контроля вСрсий (VCS), созданная для отслСТивания ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄Π΅ ΠΈ совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°ΠΌΠΈ.
Главная ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Git - Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ всСй истории ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° локально, Ρ‡Ρ‚ΠΎ позволяСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π΄Π°ΠΆΠ΅ Π±Π΅Π· ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ сСти.

Git ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ практичСски Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ IT-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅: ΠΎΡ‚ open-source Π΄ΠΎ ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π².
Он обСспСчиваСт Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ, ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ историСй ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.

βš™οΈ ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Git

  • Repository (Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ) - Π₯Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ истории ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Π‘Ρ‹Π²Π°Π΅Ρ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹ΠΉ.
  • Commit (ΠΊΠΎΠΌΠΌΠΈΡ‚) - Π‘Π½ΠΈΠΌΠΎΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ состояния Ρ„Π°ΠΉΠ»ΠΎΠ².
  • Branch (Π²Π΅Ρ‚ΠΊΠ°) - Π˜Π·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ линия Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ для Π½Π΅Π·Π°Π²ΠΈbсимых ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ.
  • Merge (слияниС) - ОбъСдинСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ Π²Π΅Ρ‚ΠΊΠΈ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ.
  • HEAD - Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ послСдний ΠΊΠΎΠΌΠΌΠΈΡ‚.

🧰 Часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

КомандаОписаниС
git statusΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° состояния рСпозитория
git logΠ˜ΡΡ‚ΠΎΡ€ΠΈΡ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²
git diffΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями
git branchΠ Π°Π±ΠΎΡ‚Π° с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ
git mergeБлияниС Π²Π΅Ρ‚ΠΎΠΊ
git stashΠ’Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ сохранСниС Π½Π΅Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‡Π΅Π½Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
git remote -vΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ привязанных ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π²
git resetΠžΡ‚ΠΌΠ΅Π½Π° добавлСния ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²
git fetchΠ—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ Π±Π΅Π· слияния

⚠️ ΠžΠΏΠ°ΡΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

ΠšΠΎΠΌΠ°Π½Π΄Π°ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠžΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ
git reset --hardΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ сбрасываСт состояниС рСпозитория Π΄ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ коммитаБСзвозвратная потСря ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ
git push --forceΠŸΠ΅Ρ€Π΅Π·Π°ΠΏΠΈΡΡ‹Π²Π°Π΅Ρ‚ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Π½Π° ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠΌ ΡΠ΅Ρ€Π²Π΅Ρ€Π΅ΠœΠΎΠΆΠ΅Ρ‚ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ Ρ‡ΡƒΠΆΠΈΠ΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹
git clean -fdУдаляСт всС нСотслСТиваСмыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠ°ΠΏΠΊΠΈΠ‘Π΅Π· восстановлСния
git rebaseΠ‘Π΅Π·Π΄ΡƒΠΌΠ½ΠΎΠ΅ пСрСписываниС истории ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²ΠΠ°Ρ€ΡƒΡˆΠ°Π΅Ρ‚ ΡΠΎΠ²ΠΌΠ΅ΡΡ‚Π½ΡƒΡŽ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ, ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹

πŸ’‘ ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ совСты

  • ΠšΠΎΠΌΠΌΠΈΡ‚ΡŒ малСнькими порциями ΠΈ с осмыслСнными сообщСниями.
  • ΠŸΠ΅Ρ€Π΅Π΄ push --- ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ pull ΠΈ merge.
  • Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ .gitignore для ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

πŸ“š Бсылки Π½Π° источники:

Git | Aleksandr Suprun