Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Git

Azure Repos | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018-TFS 2015

Visual Studio 2019 | Visual Studio 2017 | Visual Studio 2015

Из этого руководства Π²Ρ‹ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ:

ИспользованиС gitignore для прСдотвращСния отслСТивания Ρ„Π°ΠΉΠ»ΠΎΠ²

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅. gitignore

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Visual Studio 2019 вСрсии 16.8 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ систСму управлСния вСрсиями Git. Π£Π·Π½Π°ΠΉΡ‚Π΅, Ρ‡Π΅ΠΌ интСрфСйс Git отличаСтся ΠΎΡ‚ Team Explorer, Π½Π° страницС наглядного сравнСния.

Visual Studio автоматичСски создаСт Ρ„Π°ΠΉΠ» . gitignore Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€ΠΈ создании Π½ΠΎΠ²ΠΎΠ³ΠΎ рСпозитория для ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π‘ΠΊΠ°Ρ‡Π°ΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» template. gitignore для Ρ‚ΠΈΠΏΠ° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ настройтС Π΅Π³ΠΎ Π² соотвСтствии с вашими потрСбностями. Если ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π΅ соотвСтствуСт ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ пустой . gitignore ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки. ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Git ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ свСдСния ΠΎ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ:

Windows

Linux ΠΈ macOS

Git примСняСт . gitignore ΠΊ ΠΏΠ°ΠΏΠΊΠ΅ ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌ ΠΏΠ°ΠΏΠΊΠ°ΠΌ, Π³Π΄Π΅ ΠΎΠ½Π° находится. ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ . gitignore Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅ рСпозитория, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹.

Настройка. gitignore

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Visual Studio 2019 вСрсии 16.8 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅, ΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ систСму управлСния вСрсиями Git. Π£Π·Π½Π°ΠΉΡ‚Π΅, Ρ‡Π΅ΠΌ интСрфСйс Git отличаСтся ΠΎΡ‚ Team Explorer, Π½Π° страницС наглядного сравнСния.

Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» gitignore для рСпозитория, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² прСдставлСниС ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² Team Explorer, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π’Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ для gitignore.

Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git. vs ignore. Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git Ρ„ΠΎΡ‚ΠΎ. Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git-vs ignore. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° vs ignore

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ vim:

КаТдая строка Π² . gitignore ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Π½Π°Π±ΠΎΡ€ Ρ„Π°ΠΉΠ»ΠΎΠ², ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ. ΠŸΠΎΠ»Π½Ρ‹ΠΉ синтаксис gitignore ΠΎΡ‡Π΅Π½ΡŒ Π³ΠΈΠ±ΠΎΠΊ. НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных записСй.

ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² вашСй систСмС

ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π²ΠΎ всСх Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠ΅Π² Π² систСмС

Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΡƒΠ΄ΠΎΠ±Π΅Π½ для игнорирования Ρ†Π΅Π»Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ скомпилированных Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния Π² зафиксированных Ρ„Π°ΠΉΠ»Π°Ρ…

Π’Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния

Π’ΠΎ врСмя Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ отслСТиваниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Ρ„Π°ΠΉΠ»Π΅, зафиксированном Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ Git. Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΡƒΠ΄ΠΎΠ±Π΅Π½ ΠΏΡ€ΠΈ настройкС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ источника ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, для собствСнной Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ срСды.

Π’ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ отслСТивания Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ВмСсто этого ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹. Π­Ρ‚ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ для ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ отслСТиваниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия.

Π§Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ отслСТиваниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия.

БСзвозвратная ΠΎΡ‚ΠΌΠ΅Π½Π° отслСТивания Ρ„Π°ΠΉΠ»Π°

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ отслСТиваниС Ρ„Π°ΠΉΠ»Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ git, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· отслСТивания. БлСдуя этим указаниям, Ρ„Π°ΠΉΠ» останСтся Π² локальном Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Π½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ записи Π² Git.

Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

ЗафиксируйтС ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» . gitignore Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Git (.gitignore)

КакиС Ρ„Π°ΠΉΠ»Ρ‹ слСдуСт ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ?

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой Ρ„Π°ΠΉΠ»Ρ‹ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ автоматичСски созданныС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· систСм сборки. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

.gitignore Π¨Π°Π±Π»ΠΎΠ½Ρ‹

.gitignore β€” это простой тСкстовый Ρ„Π°ΠΉΠ», Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ содСрТится шаблон, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ слСдуСт ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ подстановки для сопоставлСния ΠΈΠΌΠ΅Π½ Ρ„Π°ΠΉΠ»ΠΎΠ² с подстановочными Π·Π½Π°ΠΊΠ°ΠΌΠΈ. Если Ρƒ вас Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, содСрТащиС шаблон подстановки, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΊΠΎΡΡƒΡŽ Ρ‡Π΅Ρ€Ρ‚Ρƒ ( ) для экранирования символа.

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с Ρ€Π΅ΡˆΠ΅Ρ‚ΠΊΠΈ ( # ), ΡΠ²Π»ΡΡŽΡ‚ΡΡ коммСнтариями ΠΈ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ. ΠŸΡƒΡΡ‚Ρ‹Π΅ строки ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ читаСмости Ρ„Π°ΠΉΠ»Π° ΠΈ для Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ связанных строк шаблонов.

Если шаблон начинаСтся с косой Ρ‡Π΅Ρ€Ρ‚Ρ‹, ΠΎΠ½ соотвСтствуСт Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΡ€Π½Π΅ рСпозитория.

Если шаблон Π½Π΅ начинаСтся с косой Ρ‡Π΅Ρ€Ρ‚Ρ‹, ΠΎΠ½ соотвСтствуСт Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ Π² любом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

Если шаблон заканчиваСтся косой Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ, ΠΎΠ½ соотвСтствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ. Когда ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ игнорируСтся, всС Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ.

Π‘ΡƒΠΊΠ²Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²

Π‘Π°ΠΌΡ‹ΠΉ простой шаблон β€” это Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… символов.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ совпадСний
/access.logaccess.log
access.logaccess.log
logs/access.log
var/logs/access.log
build/build

ΠŸΠΎΠ΄ΡΡ‚Π°Π½ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ символы

* β€” символ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ соотвСтствуСт Π½ΡƒΠ»ΡŽ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ символам.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ совпадСний
*.logerror.log
logs/debug.log
build/logs/error.log

** β€” Π”Π²Π° сосСдних символа Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ ΠΈΠ»ΠΈ Π½ΡƒΠ»ΡŽ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ. Если Π·Π° Π½ΠΈΠΌ слСдуСт косая Ρ‡Π΅Ρ€Ρ‚Π° ( / ), ΠΎΠ½ соотвСтствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ.

? β€” Π—Π½Π°ΠΊ вопроса соотвСтствуСт Π»ΡŽΠ±ΠΎΠΌΡƒ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠΌΡƒ символу.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ совпадСний
access?.logaccess0.log
access1.log
accessA.log
foo??fooab
foo23
foo0s

ΠšΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ совпадСний
*.[oa]file.o
file.a
*.[!oa]file.s
file.1
file.0
access.1.logaccess.0.log
access.1.log
access.2.log
file.[ac].outfile.a.out
file.b.out
file.c.out
file.[a-cx-z].outfile.a.out
file.b.out
file.c.out
file.x.out
file.y.out
file.z.out
access.[!0-2].logaccess.3.log
access.4.log
access.Q.log

ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½Ρ‹

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ совпадСний
*.log
!error.log
error.log ΠΈΠ»ΠΈ logs/error.log Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹

.gitignore ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π¨Π°Π±Π»ΠΎΠ½Ρ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ… (ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ…) Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ Π½Π°Π΄ шаблонами Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ… Π±ΠΎΠ»Π΅Π΅ высокого уровня.

Π›ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° игнорирования

НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, сгСнСрированныС ΠΈΠ· Π²Π°ΡˆΠΈΡ… Π»ΠΈΡ‡Π½Ρ‹Ρ… инструмСнтов ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π€Π°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² любом мСстС. Π§Π°Ρ‰Π΅ всСго этот Ρ„Π°ΠΉΠ» хранится Π² домашнСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. Π’Π°ΠΌ придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Git для Π΅Π³ΠΎ использования.

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ

/.gitignore_global Π² качСствС глобального Ρ„Π°ΠΉΠ»Π° игнорирования Git, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Ρ„Π°ΠΉΠ» Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ Git:

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ» Π² тСкстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΈ Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² Π½Π΅Π³ΠΎ свои ΠΏΡ€Π°Π²ΠΈΠ»Π°.

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° особСнно ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для игнорирования ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ скомпилированных исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ².

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π½Π΅Π΅ зафиксированных Ρ„Π°ΠΉΠ»ΠΎΠ²

Π€Π°ΠΉΠ»Ρ‹ Π² вашСй Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π½Π΅Ρ‚.

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ„Π°ΠΉΠ» www/yarn.lock игнорируСтся, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ:

Команда Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π°, ΠΈ Ρ„Π°ΠΉΠ» Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² вашСм Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ Π΄Π΅Ρ€Π΅Π²Π΅.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ всСх ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ вопросы ΠΈΠ»ΠΈ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

.gitignore

Git рассматриваСт ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π² вашСй Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ» ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… Π½ΠΈΠΆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ².

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ β€” это, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚Ρ‹ сборки ΠΈ Ρ„Π°ΠΉΠ»Ρ‹, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ машиной ΠΈΠ· исходных Ρ„Π°ΠΉΠ»ΠΎΠ² Π² вашСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ, Π»ΠΈΠ±ΠΎ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΈΠ½ΠΎΠΉ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ Π² ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹. Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ распространСнныС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ‚Π°ΠΊΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ²:

Π¨Π°Π±Π»ΠΎΠ½Ρ‹ игнорирования Π² Git

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΈΡΠŸΠΎΡΡΠ½Π΅Π½ΠΈΠ΅*
**/logslogs/debug.log
logs/monday/foo.bar
build/logs/debug.log
Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ Π² Π½Π°Ρ‡Π°Π»ΠΎ шаблона Π΄Π²Π΅ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π² любом мСстС рСпозитория.
**/logs/debug.loglogs/debug.log
build/logs/debug.log
Π½ΠΎ Π½Π΅
logs/build/debug.log
Π”Π²Π΅ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для сопоставлСния Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π° основС ΠΈΡ… ΠΈΠΌΠ΅Π½ΠΈ ΠΈ ΠΈΠΌΠ΅Π½ΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°.
*.logdebug.log
foo.log
.log
logs/debug.log
Одна Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠ° β€” это подстановочный Π·Π½Π°ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ нСскольким символам, Ρ‚Π°ΠΊ ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡƒ.
*.log
!important.log
debug.log
trace.log
Π½ΠΎ Π½Π΅
important.log
logs/important.log
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΎΡΠΊΠ»ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΠΊΠ° Π² Π½Π°Ρ‡Π°Π»ΠΎ шаблона отмСняСт дСйствиС шаблона. Если Ρ„Π°ΠΉΠ» соотвСтствуСт Π½Π΅ΠΊΠΎΠ΅ΠΌΡƒ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ, Π½ΠΎ ΠΏΡ€ΠΈ этом Ρ‚Π°ΠΊΠΆΠ΅ соотвСтствуСт ΠΎΡ‚ΠΌΠ΅Π½ΡΡŽΡ‰Π΅ΠΌΡƒ ΡˆΠ°Π±Π»ΠΎΠ½Ρƒ, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ послС, Ρ‚Π°ΠΊΠΎΠΉ Ρ„Π°ΠΉΠ» Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ.
*.log
!important/*.log
trace.*
debug.log
important/trace.log
Π½ΠΎ Π½Π΅
important/debug.log
Π¨Π°Π±Π»ΠΎΠ½Ρ‹, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ послС ΠΎΡ‚ΠΌΠ΅Π½ΡΡŽΡ‰Π΅Π³ΠΎ шаблона, снова Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠΌΠ΅Ρ‡Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠ°ΠΊ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅, Π΄Π°ΠΆΠ΅ Ссли Ρ€Π°Π½Π΅Π΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ этих Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Ρ‹Π»ΠΎ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½ΠΎ.
/debug.logdebug.log
Π½ΠΎ Π½Π΅
logs/debug.log
Косая Ρ‡Π΅Ρ€Ρ‚Π° ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ Ρ„Π°ΠΉΠ»Π° соотвСтствуСт Ρ„Π°ΠΉΠ»Ρƒ Π² ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ рСпозитория.
debug.logdebug.log
logs/debug.log
По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ„Π°ΠΉΠ»Π°ΠΌ, находящимся Π² любом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅
debug?.logdebug0.log
debugg.log
Π½ΠΎ Π½Π΅
debug10.log
Π—Π½Π°ΠΊ вопроса соотвСтствуСт строго ΠΎΠ΄Π½ΠΎΠΌΡƒ символу.
debug3.logdebug0.log
debug1.log
Π½ΠΎ Π½Π΅
debug10.log
ΠšΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для указания соотвСтствия ΠΎΠ΄Π½ΠΎΠΌΡƒ символу ΠΈΠ· Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°.
debug[01].logdebug0.log
debug1.log
Π½ΠΎ Π½Π΅
debug2.log
debug01.log
ΠšΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠΌΡƒ символу ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π°.
debug[!01].logdebug2.log
Π½ΠΎ Π½Π΅
debug0.log
debug1.log
debug01.log
Π’ΠΎΡΠΊΠ»ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π·Π½Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для указания соотвСтствия Π»ΡŽΠ±ΠΎΠΌΡƒ символу, ΠΊΡ€ΠΎΠΌΠ΅ символов ΠΈΠ· ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π°.
debug[a-z].logdebuga.log
debugb.log
Π½ΠΎ Π½Π΅
debug1.log
Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌΠΈ ΠΈΠ»ΠΈ Π±ΡƒΠΊΠ²Π΅Π½Π½Ρ‹ΠΌΠΈ.
logslogs
logs/debug.log
logs/latest/foo.bar
build/logs
build/logs/debug.log
Π‘Π΅Π· косой Ρ‡Π΅Ρ€Ρ‚Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ этот шаблон Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌ, ΠΈ содСрТимому ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² с Ρ‚Π°ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ соотвСтствия слСва ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ с ΠΈΠΌΠ΅Π½Π΅ΠΌ logs
logs/logs/debug.log
logs/latest/foo.bar
build/logs/foo.bar
build/logs/latest/debug.log
Косая Ρ‡Π΅Ρ€Ρ‚Π° Π² ΠΊΠΎΠ½Ρ†Π΅ шаблона ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³. ВсС содСрТимоС любого ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° рСпозитория, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ этому ΠΈΠΌΠ΅Π½ΠΈ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ всС Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ), Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ
logs/
!logs/important.log
logs/debug.log
logs/important.log
ΠœΠΈΠ½ΡƒΡ‚ΠΎΡ‡ΠΊΡƒ! Π Π°Π·Π²Π΅ Ρ„Π°ΠΉΠ» logs/important.log ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° слСва Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ Π½Π· списка ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ…?

НСт! Из-Π·Π° странностСй Git, связанных с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ, Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΎ шаблоном соотвСтствия ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ

logs/**/debug.loglogs/debug.log
logs/monday/debug.log
logs/monday/pm/debug.log
Π”Π²Π΅ Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ мноТСству ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈΠ»ΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΌΡƒ.
logs/*day/debug.loglogs/monday/debug.log
logs/tuesday/debug.log
but not
logs/latest/debug.log
ΠŸΠΎΠ΄ΡΡ‚Π°Π½ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ символы ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π² ΠΈΠΌΠ΅Π½Π°Ρ… ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ².
logs/debug.loglogs/debug.log
Π½ΠΎ Π½Π΅
debug.log
build/logs/debug.log
Π¨Π°Π±Π»ΠΎΠ½Ρ‹, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Π½Π° Ρ„Π°ΠΉΠ» Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅, Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° рСпозитория. (ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π°Ρ‡Π°Π»ΠΎ ΠΊΠΎΡΡƒΡŽ Ρ‡Π΅Ρ€Ρ‚Ρƒ, Π½ΠΎ ΠΎΠ½Π° Π½ΠΈ Π½Π° Ρ‡Ρ‚ΠΎ особо Π½Π΅ повлияСт.)

ΠŸΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° игнорирования Π² Git

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° игнорирования Π² Git

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π½Π΅Π΅ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°

ΠšΠΎΠΌΠΌΠΈΡ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°

Π­Ρ‚ΠΎΡ‚ способ Ρ…ΠΎΡ€ΠΎΡˆ, Ссли Ρƒ вас Π·Π°Π΄Π°Π½ ΠΎΠ±Ρ‰ΠΈΠΉ шаблон (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, *.log ), Π½ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°. Однако Π΅Ρ‰Π΅ Π»ΡƒΡ‡ΡˆΠ΅ Π² этом случаС Π·Π°Π΄Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΎΠ±Ρ‰Π΅Π³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°:

Π­Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π΅Π½ ΠΈ понятСн, Ссли Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅.

Π‘ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌ Ρ„Π°ΠΉΠ»Π΅

ΠŸΡ€ΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ git check-ignore ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ нСсколько ΠΈΠΌΠ΅Π½ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΏΡ€ΠΈΡ‡Π΅ΠΌ сами ΠΈΠΌΠ΅Π½Π° ΠΌΠΎΠ³ΡƒΡ‚ Π΄Π°ΠΆΠ΅ Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Π°ΠΌ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Π² вашСм Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ.

Π“ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ Git?

ΠžΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с этим ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΌ руководством.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Git (.gitignore)

Π“Π»Π°Π²Π½ΠΎΠ΅ мСню Β» Π‘Ρ‚Π°Ρ‚ΡŒΠΈ Β» Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² Π² Git (.gitignore)

Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git. lazy placeholder. Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git Ρ„ΠΎΡ‚ΠΎ. Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git-lazy placeholder. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° lazy placeholder

КакиС Ρ„Π°ΠΉΠ»Ρ‹ слСдуСт ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ?

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ – это, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, спСцифичныС для ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ автоматичСски созданныС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· систСм сборки. НСкоторыС ΠΎΠ±Ρ‰ΠΈΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя:

.gitignore ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ с подстановкой для сопоставлСния ΠΈΠΌΠ΅Π½ Ρ„Π°ΠΉΠ»ΠΎΠ² с подстановочными Π·Π½Π°ΠΊΠ°ΠΌΠΈ. Если Ρƒ вас Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, содСрТащиС шаблон подстановки, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΊΠΎΡΡƒΡŽ Ρ‡Π΅Ρ€Ρ‚Ρƒ (\) для экранирования символа.

ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с Ρ…ΡΡˆ-ΠΌΠ΅Ρ‚ΠΊΠΈ (#), ΡΠ²Π»ΡΡŽΡ‚ΡΡ коммСнтариями ΠΈ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ. ΠŸΡƒΡΡ‚Ρ‹Π΅ строки ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ читаСмости Ρ„Π°ΠΉΠ»Π° ΠΈ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ связанных строк шаблонов.

РассСчСниС

Если шаблон начинаСтся с косой Ρ‡Π΅Ρ€Ρ‚Ρ‹, ΠΎΠ½ сопоставляСт Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΡ€Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°.

Если шаблон Π½Π΅ начинаСтся с косой Ρ‡Π΅Ρ€Ρ‚Ρ‹, ΠΎΠ½ сопоставляСт Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π² любом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

Если шаблон заканчиваСтся косой Ρ‡Π΅Ρ€Ρ‚ΠΎΠΉ, ΠΎΠ½ соотвСтствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ. Когда ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ игнорируСтся, всС Π΅Π³ΠΎ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ.

Π›ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²

Π‘Π°ΠΌΡ‹ΠΉ простой шаблон – это Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… символов.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСний
/access.logaccess.log
access.logaccess.log
logs/access.log
var/logs/access.log
build/build

Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ подстановки

* – Π‘ΠΈΠΌΠ²ΠΎΠ» Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ соотвСтствуСт Π½ΡƒΠ»ΡŽ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ символов.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСний
*.logerror.log
logs/debug.log
build/logs/error.log

**- Π”Π²Π° сосСдних символа Π·Π²Π΅Π·Π΄ΠΎΡ‡ΠΊΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ„Π°ΠΉΠ»Ρƒ ΠΈΠ»ΠΈ нуля ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². Когда Π·Π° Π½ΠΈΠΌ слСдуСт косая Ρ‡Π΅Ρ€Ρ‚Π° ( /), ΠΎΠ½ соотвСтствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌ.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСний
logs/**Π‘ΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ‚ с Ρ‡Π΅ΠΌ ΡƒΠ³ΠΎΠ΄Π½ΠΎ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° logs.
**/buildvar/build
pub/build
build
foo/**/barfoo/bar
foo/a/bar
foo/a/b/c/bar

? – Π—Π½Π°ΠΊ вопроса соотвСтствуСт Π»ΡŽΠ±ΠΎΠΌΡƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ символу.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСний
access?.logaccess0.log
access1.log
accessA.log
foo??fooab
foo23
foo0s

ΠšΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСний
*.[oa]file.o
file.a
*.[!oa]file.s
file.1
file.0
access.2.logaccess.0.log
access.1.log
access.2.log
file.[a-c].outfile.a.out
file.b.out
file.c.out
file.[a-cx-z].outfile.a.out
file.b.out
file.c.out
file.x.out
file.y.out
file.z.out
access.[!0-2].logaccess.3.log
access.4.log
access.Q.log

ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π·Ρ†Ρ‹

Π¨Π°Π±Π»ΠΎΠ½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ начинаСтся с Π²ΠΎΡΠΊΠ»ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΠΊΠ° (!), отмСняСт (ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚) любой Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ игнорируСтся ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ шаблоном. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ· этого ΠΏΡ€Π°Π²ΠΈΠ»Π° являСтся ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π°, Ссли ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ Π΅Π³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Π¨Π°Π±Π»ΠΎΠ½ΠŸΡ€ΠΈΠΌΠ΅Ρ€ совпадСний
*.log
!error.log
error.log ΠΈΠ»ΠΈ logs/error.log Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½

Π¨Π°Π±Π»ΠΎΠ½Ρ‹, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² Ρ„Π°ΠΉΠ»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ… (ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ…) Π±ΠΎΠ»Π΅Π΅ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ уровня, ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ Π½Π°Π΄ шаблонами Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°Ρ… Π±ΠΎΠ»Π΅Π΅ высокого уровня.

ΠŸΡ€Π°Π²ΠΈΠ»Π° Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ игнорирования

НапримСр, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ„Π°ΠΉΠ» для игнорирования сгСнСрированных Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ· Π²Π°ΡˆΠΈΡ… Π»ΠΈΡ‡Π½Ρ‹Ρ… инструмСнтов ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°.

Π€Π°ΠΉΠ» ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π·Π²Π°Π½ ΠΊΠ°ΠΊ ΡƒΠ³ΠΎΠ΄Π½ΠΎ ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² любом мСстС. НаиболСС распространСнным мСстом для хранСния этого Ρ„Π°ΠΉΠ»Π° являСтся домашний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³. Π’Π°ΠΌ придСтся Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Git для Π΅Π³ΠΎ использования.

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ

/.gitignore_global Π² качСствС глобального Ρ„Π°ΠΉΠ»Π° игнорирования Git, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° особСнно ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для игнорирования ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹ с ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΈΠ»ΠΈ скомпилированныС исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹.

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ€Π°Π½Π΅Π΅ зафиксированных Ρ„Π°ΠΉΠ»ΠΎΠ²

Π€Π°ΠΉΠ»Ρ‹ Π² вашСй Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ ΠΊΠΎΠΏΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ отслСТСны ΠΈΠ»ΠΈ Π½Π΅ отслСТСны.

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΊΠ°ΠΊ ΠΈΠ· индСкса, Ρ‚Π°ΠΊ ΠΈ ΠΈΠ· локальной Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы, опуститС ΠΎΠΏΡ†ΠΈΡŽ –cached.

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ„Π°ΠΉΠ» www/yarn.lock игнорируСтся, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ:

Π’Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ„Π°ΠΉΠ»Ρƒ gitignore, Π½ΠΎΠΌΠ΅Ρ€ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΉ строки ΠΈ фактичСский шаблон.

Команда Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π° Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΈ Ρ„Π°ΠΉΠ» Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² вашСм Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ Π΄Π΅Ρ€Π΅Π²Π΅.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ всСх ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²

Команда git statusс ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ –ignored ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ список всСх ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²:

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ вопросы ΠΈΠ»ΠΈ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

Если Π²Ρ‹ нашли ΠΎΡˆΠΈΠ±ΠΊΡƒ, поТалуйста, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ тСкста ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Ctrl+Enter.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² (Gitignore) β€” Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² Git

Π’ процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π½Π°Π΄ Π»ΡŽΠ±Ρ‹ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Ρ„Π°ΠΉΠ»Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ исходного ΠΊΠΎΠ΄Π°. ВсС эти Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ условно Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° нСсколько Π³Ρ€ΡƒΠΏΠΏ:

Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹

АртСфакты

Всё это Π² ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΉ ситуации Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, эти Ρ„Π°ΠΉΠ»Ρ‹ Π½Π΅ нСсут Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·Ρ‹ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния исходного ΠΊΠΎΠ΄Π°. Они ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π»ΠΈΠ±ΠΎ автоматичСски (кСши, Π»ΠΎΠ³ΠΈ), Π»ΠΈΠ±ΠΎ ΠΏΠΎ запросу (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΊΠ°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ΡΡ зависимости ΠΈΠ»ΠΈ собираСтся ΠΏΡ€ΠΎΠ΅ΠΊΡ‚). Главная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° с этими Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π² ΠΈΡ… постоянном ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΈ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ€Π°Ρ…. Если Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ, Ρ‚ΠΎ практичСски Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠΎΠΌΠΌΠΈΡ‚Π΅, ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ исходного ΠΊΠΎΠ΄Π°, Π±ΡƒΠ΄Π΅Ρ‚ ΠΈ ΠΏΠ°Ρ‡ΠΊΠ° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² этих Ρ„Π°ΠΉΠ»Π°Ρ…. Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ Ρ‚Π°ΠΊΠΈΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² ΠΊΡ€Π°ΠΉΠ½Π΅ слоТно.

Git позволяСт Π³ΠΈΠ±ΠΊΠΎ Π½Π°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ. ДСлаСтся это с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Π°ΠΉΠ»Π° .gitignore:

Иногда Π±Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠ΅, Ρ‡Ρ‚ΠΎ программист случайно ΡƒΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π² Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π’ этой ситуации нСдостаточно ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° игнорирования. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ придСтся ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ· git с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ git rm ΠΈ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ.

Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π°

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git. mentors c5a2c0d5be5b134e174aad63fdd756ea3c31e3cbf86a0a112936dda315ec1a93. Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git Ρ„ΠΎΡ‚ΠΎ. Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git-mentors c5a2c0d5be5b134e174aad63fdd756ea3c31e3cbf86a0a112936dda315ec1a93. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Как ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² git. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° mentors c5a2c0d5be5b134e174aad63fdd756ea3c31e3cbf86a0a112936dda315ec1a93

ΠžΡΡ‚Π°Π»ΠΈΡΡŒ вопросы? Π—Π°Π΄Π°ΠΉΡ‚Π΅ ΠΈΡ… Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ Β«ΠžΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅Β»

Π’Π°ΠΌ отвСтят ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π₯СкслСта ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ студСнты.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *