SlideShare a Scribd company logo
GIT
Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ Subversion, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΡ€ΡƒΡ‡Π΅




                                        Антон ΠœΠΈΡ€ΠΎΠ½ΠΎΠ²
Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ?
β€œΠ― Ρ‚ΠΎΠΆΠ΅ измСнял этот файл”

Как Π±Ρ‹ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Ρ„Π°ΠΉΠ»Π°?

Когда ΠΆΠ΅ появился этот Π±Π°Π³?

И ΠΊΡ‚ΠΎ Π΅Π³ΠΎ сдСлал?!

Как Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ эту Ρ„ΠΈΡ‡Ρƒ, Π° ΠΏΠΎΡ‚ΠΎΠΌ, Ссли Π½Π΅ понравится,
ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π΅Π΅?

β€œΠ‘Π»ΠΎΠΌΠ°Π»ΡΡ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€ – большС Π½Π΅ ΠΎΡ‚ΠΌΠ°Π·ΠΊΠ°
Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ GIT?
Написана Линусом
Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄ΡΠΎΠΌ Π² 2005 Π³ΠΎΠ΄Ρƒ

Написана для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ
ядра линукса (вСрсия
2.6.29 ΠΈΠΌΠ΅Π΅Ρ‚ 11,010,647
строк ΠΊΠΎΠ΄Π°)

Написана в основном на C

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄,
бСсплатная (GNU GPL V2)
ΠšΠΎΠΌΡƒ это Π½ΡƒΠΆΠ½ΠΎ?




    И ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ.
Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹
Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
 мСсто, Π³Π΄Π΅ хранятся ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅

ΠšΠΎΠΌΠΌΠΈΡ‚
 фиксация ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

Π’Π΅Ρ‚ΠΊΠ°
 ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Π²Π΅Ρ‚Π²ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ

ΠœΠ΅Ρ€Π΄ΠΆΠΈΡ‚ΡŒ
 ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ измСнСния Π΄Π²ΡƒΡ… Π²Π΅Ρ‚ΠΎΠΊ
ΠŸΠΎΡ‡Π΅ΠΌΡƒ GIT?

ΠžΡ‡Π΅Π½ΡŒ мощная ΠΈ быстрая

РаспрСдСлСнная

ΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π° Π±Π΅Π· соСдинСния с ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ΠΎΠΌ

Π‘ΠΎΠ·Π΄Π°Π½Π° для Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΎΡ‡Π΅Π½ΡŒ удобная
Ρ€Π°Π±ΠΎΡ‚Π° с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ
ΠœΠΎΡ‰Π½Π°Ρ?
~ > git
add           clone               imap-send        request-pull
am            commit              init             reset
annotate      config              instaweb         revert
apply         describe            log              rm
archive       diff                merge            send-email
bisect        external-chdiff     mergetool        shortlog
blame         fetch               mv               show
branch        filter-branch       name-rev         show-branch
bundle        format-patch        publish-branch   stash
checkout      fsck                pull             status
cherry        gc                  push             submodule
cherry-pick   get-tar-commit-id   rebase           svn
chmerge       grep                relink           tag
citool        gui                 remote           whatchanged
clean         help                repack           wtf



                         ΠžΡ‡Π΅Π½ΡŒ.
Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Π±Π΅Π· ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°?

ИзмСнСния ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями

Полная история Ρ„Π°ΠΉΠ»Π°

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ сдСланных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ

БлияниС Π²Π΅Ρ‚ΠΎΠΊ

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ
Π§Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚
         распрСдСлСнная?

Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° своя локальная копия
рСпозитория

ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ производятся Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ синхронизируСтся с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ
ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ
Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚?
              SVN                   GIT


        svn   add file        git   add file
        svn   rm file         git   rm file
        svn   mv file         git   mv file
        svn   commit          git   commit



Π’Π°ΠΆΠ½ΠΎ: git commit Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
Бинхронизация


           ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ измСнСния ΠΈΠ· ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ
git pull
                     рСпозитория


           Π—Π°ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π½Π°
git push
                   ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ сСрвСр
Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ
           процСсс
ИзмСнили Ρ„Π°ΠΉΠ»Ρ‹, создали Π½ΠΎΠ²Ρ‹Π΅
ΠŸΡ€ΠΎΠ³Π½Π°Π»ΠΈ тСсты
git status – ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ Π½ΠΎΠ²Ρ‹Π΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅

git add . – Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π½ΠΎΠ²Ρ‹Π΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² индСкс

git commit -m β€œΠ‘Π΄Π΅Π»Π°Π» ...” – сдСлали ΠΊΠΎΠΌΠΌΠΈΡ‚ Π²
Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
Π‘Π½ΠΎΠ²Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»Ρ‹, Π΄ΠΎΠ΄Π΅Π»Π°Π»ΠΈ Ρ„ΠΈΡ‡Ρƒ, снова Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠ»ΠΈ

git pull – скачали ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΊΠΎΠ»Π»Π΅Π³

git push – Π·Π°ΠΊΠ°Ρ‡Π°Π»ΠΈ свои измСнСния Π½Π° сСрвСр
Π”Π•ΠœΠž
Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅?
master – основная Π²Π΅Ρ‚ΠΊΠ°

КаТдая Π²Π΅Ρ‚ΠΊΠ° – ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΈΠ½ΠΈ-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ

Много программистов ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π°Π΄
Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Π²Π΅Ρ‚ΠΊΠ°Ρ…

МоТно ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ Π² Π²Π΅Ρ‚ΠΊΠ΅ Π½Π΅Π΄ΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ, быстро
ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅ΠΉ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°Π΄Π°Ρ‡Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, сдСланныС измСнСния
ΠΈΠ· Π²Π΅Ρ‚ΠΊΠΈ ΠΌΠ΅Ρ€Π΄ΠΆΠ°Ρ‚ΡŒΡΡ Π² master
ΠŸΡ€Π°Π²ΠΈΠ»Π° Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ‚ΠΎΠ½Π°

master – Π²Π΅Ρ‚ΠΊΠ°, которая всСгда, Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ
Π³ΠΎΡ‚ΠΎΠ²Π° ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅

Никогда Π½Π΅ Π΄Π΅Π»Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ ΠΈ багфиксы сразу Π² master,
ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для этого Π²Π΅Ρ‚ΠΊΠΈ

Одна Ρ„ΠΈΡ‡Π° β€” ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ°

Один багфикс (Ссли прСдполагаСтся Π΄Π»ΠΈΠ½Π½Π΅Π΅ Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²) β€”
ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ°
ΠŸΡ€Π°Π²ΠΈΠ»Π° Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ‚ΠΎΠ½Π°

Один экспСримСнт β€” ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ°

Одна Ρ„ΠΈΡ‡Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ экспСримСнта β€” Π²Π΅Ρ‚ΠΊΠ° ΠΎΡ‚ Π²Π΅Ρ‚ΠΊΠΈ

ВсСгда пишСм Π²Ρ€Π°Π·ΡƒΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ„ΠΈΡ‡Π° (ΠΈΠ»ΠΈ багфикс) написаны, оттСстированы ΠΈ
Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅, ΠΌΠ΅Ρ€Π΄ΠΆΠΈΠΌ Π²Π΅Ρ‚ΠΊΡƒ Π² master.
ΠšΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ Π² master
         нСльзя?
МоТно.

Когда ΠΌΡ‹ Ρ‚ΠΎΡ‡Π½ΠΎ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ нашС ΠΌΠ΅Π»ΠΊΠΎΠ΅
ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ Π½Π΅ создаст
Π½ΠΎΠ²Ρ‹Ρ….

Когда ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Π½Π΅ понадобится ΠΏΠΎΡ‚ΠΎΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ багфикс
для багфикса.

ΠŸΡ€ΠΈ этом, измСнСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ.
Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π³Π° ΠΈΠ»ΠΈ
      Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„ΠΈΡ‡ΠΈ
Π”Π΅Π»Π°Π΅ΠΌ Π²Π΅Ρ‚ΠΊΡƒ feature, вся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ Π·Π°Π΄Π°Ρ‡Π΅ происходит Π² Π½Π΅ΠΉ
ВсС тСстируСм
ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ Π½Π° мастСр (git checkout master)
ΠœΠ΅Ρ€Π΄ΠΆΠΈΠΌ Π² мастСр Π²Π΅Ρ‚ΠΊΡƒ (git merge feature)
Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅ΠΌ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, Ссли Π±Ρ‹Π»ΠΈ
ВСстируСм
Π—Π°ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ Π½Π° сСрвСр (git push)
УдаляСм Π²Π΅Ρ‚ΠΊΡƒ (git branch -d feature)
Π”Π•ΠœΠž
Как это выглядит Π² ΠΆΠΈΠ·Π½ΠΈ?
ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

  git log            ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π»ΠΎΠ³ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²


 git stash    Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния, Π½ΠΎ Π½Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ


 git stash
                      Π’ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ измСнСния
   apply

 git reset     ΠžΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ всС измСнСния Π΄ΠΎ послСднСго
                              ΠΊΠΎΠΌΠΌΠΈΡ‚Π°
--hard HEAD
ΠŸΠ°Ρ€Π° Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ

ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ΅Π»ΠΊΠΈΠΌΠΈ. Бписок ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π°
ΠΏΡΡ‚ΡŒ экранов Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ, Π° Π½Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ.

НС Π»Π΅Π½ΠΈΡ‚Π΅ΡΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ.

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ git log, Ρ€ΡƒΠ³Π°ΠΉΡ‚Π΅ своих ΠΊΠΎΠ»Π»Π΅Π³ Π·Π°
Π½Π΅Π²Ρ€Π°Π·ΡƒΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ описания ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ².

ВСстируйтС ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² master.
НС касался
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ рСпозитория

Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ²

ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ Π²Π΅Ρ‚ΠΊΠΈ для совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ merge ΠΈ rebase

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠΊ

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ fork’ов
Бсылки


Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ: http://git.or.cz

ΠŸΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ: http://book.git-scm.com/

ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ: http://gitcasts.com/

More Related Content

What's hot

JavaTalks.Patterns.Singleton
JavaTalks.Patterns.SingletonJavaTalks.Patterns.Singleton
JavaTalks.Patterns.Singleton
stanislav bashkirtsev
Β 
Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘
Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘
Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘
ssuser6d3afb
Β 
SOA and RFID
SOA and RFIDSOA and RFID
SOA and RFIDVitaly Baum
Β 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ
vseneshtiak
Β 
РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...
РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...
РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...
E-Money News
Β 
исчСзнут Π»ΠΈ российскиС эпс
исчСзнут Π»ΠΈ российскиС эпсисчСзнут Π»ΠΈ российскиС эпс
исчСзнут Π»ΠΈ российскиС эпсTimur AITOV
Β 
БогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use Case
БогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use CaseБогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use Case
БогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use CaseDenis Beskov
Β 
Ptesentation!
Ptesentation!Ptesentation!
Ptesentation!PRInfo
Β 
Inter@Ctive Web Office
Inter@Ctive Web OfficeInter@Ctive Web Office
Inter@Ctive Web Office
www.invest2b.ru
Β 
ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ
ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ
ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ
Π’ΠΎΠ»ΠΎΠ΄ΠΈΠΌΠΈΡ€ ΠœΠ°Ρ€Ρ‚ΠΈΠ½
Β 
Огляд судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄Ρƒ
Огляд судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄ΡƒΠžΠ³Π»ΡΠ΄ судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄Ρƒ
Огляд судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄Ρƒ
Pravotv
Β 
SPBNET: webdev company profile
SPBNET: webdev company profileSPBNET: webdev company profile
SPBNET: webdev company profile
Irina Zimitskaya
Β 
Etarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case StudyEtarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case Study
Etarget
Β 
Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ россии
Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ россиинуТСн Π»ΠΈ россии
Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ россииTimur AITOV
Β 
ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ тСстировщиков
ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΎΠ²ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ тСстировщиков
ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ тСстировщиков
Julia Nechaeva
Β 
Π—Π»Π°ΠΌΠ°Π½Π° доля Ρ‚Π° нСскорСна воля
Π—Π»Π°ΠΌΠ°Π½Π° доля Ρ‚Π° нСскорСна воляЗламана доля Ρ‚Π° нСскорСна воля
Π—Π»Π°ΠΌΠ°Π½Π° доля Ρ‚Π° нСскорСна воля
Vinnytsia Regional Universal Scientific Library named after Valentin Otamanovsky
Β 
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉpkgpkg
Β 
Российский IT-Foresight
Российский IT-ForesightРоссийский IT-Foresight
Российский IT-Foresight
Victor Gridnev
Β 
ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компост
ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компосткак Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компост
ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компостFondation Paideia
Β 
Christofides
ChristofidesChristofides
ChristofidesStas Fomin
Β 

What's hot (20)

JavaTalks.Patterns.Singleton
JavaTalks.Patterns.SingletonJavaTalks.Patterns.Singleton
JavaTalks.Patterns.Singleton
Β 
Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘
Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘
Π”ΠΎΠ΄Π°Ρ‚ΠΎΠΊ 2. ΠŸΡ€Π°Π²ΠΈΠ»Π° Π’ΠšΠ‘Π‘
Β 
SOA and RFID
SOA and RFIDSOA and RFID
SOA and RFID
Β 
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π»ΠΎΡΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ
Β 
РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...
РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...
РИЀ 2008: Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Π΅ систСмы: унивСрсализация ΠΈΠ»ΠΈ спСциализация? (...
Β 
исчСзнут Π»ΠΈ российскиС эпс
исчСзнут Π»ΠΈ российскиС эпсисчСзнут Π»ΠΈ российскиС эпс
исчСзнут Π»ΠΈ российскиС эпс
Β 
БогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use Case
БогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use CaseБогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use Case
БогласованиС интСрСсов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡ‹ Use Case
Β 
Ptesentation!
Ptesentation!Ptesentation!
Ptesentation!
Β 
Inter@Ctive Web Office
Inter@Ctive Web OfficeInter@Ctive Web Office
Inter@Ctive Web Office
Β 
ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ
ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ
ΠŸΡ€Π΅Π·Π΅Π½Ρ‚Π°Ρ†Ρ–Ρ заступника Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€Π° Π· Π½Π°Π²Ρ‡Π°Π»ΡŒΠ½ΠΎ-Π²ΠΈΡ…ΠΎΠ²Π½ΠΎΡ— Ρ€ΠΎΠ±ΠΎΡ‚ΠΈ
Β 
Огляд судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄Ρƒ
Огляд судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄ΡƒΠžΠ³Π»ΡΠ΄ судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄Ρƒ
Огляд судової ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠšΠ°ΡΠ°Ρ†Ρ–ΠΉΠ½ΠΎΠ³ΠΎ Ρ†ΠΈΠ²Ρ–Π»ΡŒΠ½ΠΎΠ³ΠΎ суду Ρƒ складі Π’Π΅Ρ€Ρ…ΠΎΠ²Π½ΠΎΠ³ΠΎ Π‘ΡƒΠ΄Ρƒ
Β 
SPBNET: webdev company profile
SPBNET: webdev company profileSPBNET: webdev company profile
SPBNET: webdev company profile
Β 
Etarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case StudyEtarget Bulgaria - Automotive Case Study
Etarget Bulgaria - Automotive Case Study
Β 
Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ россии
Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ россиинуТСн Π»ΠΈ россии
Π½ΡƒΠΆΠ΅Π½ Π»ΠΈ россии
Β 
ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ тСстировщиков
ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ Ρ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊΠΎΠ²ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ тСстировщиков
ΠŸΡ€ΠΎΡ„ΠΎΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ тСстировщиков
Β 
Π—Π»Π°ΠΌΠ°Π½Π° доля Ρ‚Π° нСскорСна воля
Π—Π»Π°ΠΌΠ°Π½Π° доля Ρ‚Π° нСскорСна воляЗламана доля Ρ‚Π° нСскорСна воля
Π—Π»Π°ΠΌΠ°Π½Π° доля Ρ‚Π° нСскорСна воля
Β 
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ
ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ… пользования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ
Β 
Российский IT-Foresight
Российский IT-ForesightРоссийский IT-Foresight
Российский IT-Foresight
Β 
ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компост
ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компосткак Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компост
ΠΊΠ°ΠΊ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ компост
Β 
Christofides
ChristofidesChristofides
Christofides
Β 

Git

  • 1. GIT Ρ‚ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ Subversion, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΡ€ΡƒΡ‡Π΅ Антон ΠœΠΈΡ€ΠΎΠ½ΠΎΠ²
  • 2. Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½ΠΎ? β€œΠ― Ρ‚ΠΎΠΆΠ΅ измСнял этот файл” Как Π±Ρ‹ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ€ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Ρ„Π°ΠΉΠ»Π°? Когда ΠΆΠ΅ появился этот Π±Π°Π³? И ΠΊΡ‚ΠΎ Π΅Π³ΠΎ сдСлал?! Как Π±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ эту Ρ„ΠΈΡ‡Ρƒ, Π° ΠΏΠΎΡ‚ΠΎΠΌ, Ссли Π½Π΅ понравится, ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π΅Π΅? β€œΠ‘Π»ΠΎΠΌΠ°Π»ΡΡ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€β€ – большС Π½Π΅ ΠΎΡ‚ΠΌΠ°Π·ΠΊΠ°
  • 3.
  • 4. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ GIT? Написана Линусом Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄ΡΠΎΠΌ Π² 2005 Π³ΠΎΠ΄Ρƒ Написана для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ядра линукса (вСрсия 2.6.29 ΠΈΠΌΠ΅Π΅Ρ‚ 11,010,647 строк ΠΊΠΎΠ΄Π°) Написана Π² основном Π½Π° C ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ исходный ΠΊΠΎΠ΄, бСсплатная (GNU GPL V2)
  • 5. ΠšΠΎΠΌΡƒ это Π½ΡƒΠΆΠ½ΠΎ? И ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ.
  • 6. Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹ Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ мСсто, Π³Π΄Π΅ хранятся ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π΄Π°Π½Π½Ρ‹Π΅ ΠšΠΎΠΌΠΌΠΈΡ‚ фиксация ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π’Π΅Ρ‚ΠΊΠ° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Π²Π΅Ρ‚Π²ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠœΠ΅Ρ€Π΄ΠΆΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ измСнСния Π΄Π²ΡƒΡ… Π²Π΅Ρ‚ΠΎΠΊ
  • 7. ΠŸΠΎΡ‡Π΅ΠΌΡƒ GIT? ΠžΡ‡Π΅Π½ΡŒ мощная ΠΈ быстрая РаспрСдСлСнная ΠŸΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π° Π±Π΅Π· соСдинСния с ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚ΠΎΠΌ Π‘ΠΎΠ·Π΄Π°Π½Π° для Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΎΡ‡Π΅Π½ΡŒ удобная Ρ€Π°Π±ΠΎΡ‚Π° с Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ
  • 8. ΠœΠΎΡ‰Π½Π°Ρ? ~ > git add clone imap-send request-pull am commit init reset annotate config instaweb revert apply describe log rm archive diff merge send-email bisect external-chdiff mergetool shortlog blame fetch mv show branch filter-branch name-rev show-branch bundle format-patch publish-branch stash checkout fsck pull status cherry gc push submodule cherry-pick get-tar-commit-id rebase svn chmerge grep relink tag citool gui remote whatchanged clean help repack wtf ΠžΡ‡Π΅Π½ΡŒ.
  • 9. Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ Π±Π΅Π· ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π°? ИзмСнСния ΠΌΠ΅ΠΆΠ΄Ρƒ вСрсиями Полная история Ρ„Π°ΠΉΠ»Π° ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ сдСланных ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ БлияниС Π²Π΅Ρ‚ΠΎΠΊ ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ‚ΠΊΠ°ΠΌΠΈ
  • 10. Π§Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚ распрСдСлСнная? Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° своя локальная копия рСпозитория ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ производятся Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π›ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ синхронизируСтся с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ
  • 11. Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠΈΡ‚? SVN GIT svn add file git add file svn rm file git rm file svn mv file git mv file svn commit git commit Π’Π°ΠΆΠ½ΠΎ: git commit Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ
  • 12. Бинхронизация ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ измСнСния ΠΈΠ· ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ git pull рСпозитория Π—Π°ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π½Π° git push ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ сСрвСр
  • 13. Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс ИзмСнили Ρ„Π°ΠΉΠ»Ρ‹, создали Π½ΠΎΠ²Ρ‹Π΅ ΠŸΡ€ΠΎΠ³Π½Π°Π»ΠΈ тСсты git status – ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ Π½ΠΎΠ²Ρ‹Π΅, ΠΊΠ°ΠΊΠΈΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ git add . – Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π½ΠΎΠ²Ρ‹Π΅ ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ Π² индСкс git commit -m β€œΠ‘Π΄Π΅Π»Π°Π» ...” – сдСлали ΠΊΠΎΠΌΠΌΠΈΡ‚ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Π‘Π½ΠΎΠ²Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»Ρ‹, Π΄ΠΎΠ΄Π΅Π»Π°Π»ΠΈ Ρ„ΠΈΡ‡Ρƒ, снова Π·Π°ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΠ»ΠΈ git pull – скачали ΠΊΠΎΠΌΠΌΠΈΡ‚Ρ‹ ΠΊΠΎΠ»Π»Π΅Π³ git push – Π·Π°ΠΊΠ°Ρ‡Π°Π»ΠΈ свои измСнСния Π½Π° сСрвСр
  • 15. Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π²Π΅Ρ‚Π²Π»Π΅Π½ΠΈΠ΅? master – основная Π²Π΅Ρ‚ΠΊΠ° КаТдая Π²Π΅Ρ‚ΠΊΠ° – ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΈΠ½ΠΈ-Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ Много программистов ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π°Π΄ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Π²Π΅Ρ‚ΠΊΠ°Ρ… МоТно ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ Π² Π²Π΅Ρ‚ΠΊΠ΅ Π½Π΅Π΄ΠΎΠ΄Π΅Π»Π°Π½Π½ΠΎΠΉ, быстро ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π²Π΅Ρ‚ΠΊΡƒ ΠΈ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π² Π½Π΅ΠΉ ΠΎΡˆΠΈΠ±ΠΊΡƒ. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π·Π°Π΄Π°Ρ‡Π° Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π°, сдСланныС измСнСния ΠΈΠ· Π²Π΅Ρ‚ΠΊΠΈ ΠΌΠ΅Ρ€Π΄ΠΆΠ°Ρ‚ΡŒΡΡ Π² master
  • 16. ΠŸΡ€Π°Π²ΠΈΠ»Π° Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ‚ΠΎΠ½Π° master – Π²Π΅Ρ‚ΠΊΠ°, которая всСгда, Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Π° ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Никогда Π½Π΅ Π΄Π΅Π»Π°Π΅ΠΌ Π½ΠΎΠ²Ρ‹Π΅ Ρ„ΠΈΡ‡ΠΈ ΠΈ багфиксы сразу Π² master, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ для этого Π²Π΅Ρ‚ΠΊΠΈ Одна Ρ„ΠΈΡ‡Π° β€” ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ° Один багфикс (Ссли прСдполагаСтся Π΄Π»ΠΈΠ½Π½Π΅Π΅ Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ²) β€” ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ°
  • 17. ΠŸΡ€Π°Π²ΠΈΠ»Π° Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ‚ΠΎΠ½Π° Один экспСримСнт β€” ΠΎΠ΄Π½Π° Π²Π΅Ρ‚ΠΊΠ° Одна Ρ„ΠΈΡ‡Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ экспСримСнта β€” Π²Π΅Ρ‚ΠΊΠ° ΠΎΡ‚ Π²Π΅Ρ‚ΠΊΠΈ ВсСгда пишСм Π²Ρ€Π°Π·ΡƒΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡ‚Π°ΠΌ ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ„ΠΈΡ‡Π° (ΠΈΠ»ΠΈ багфикс) написаны, оттСстированы ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅, ΠΌΠ΅Ρ€Π΄ΠΆΠΈΠΌ Π²Π΅Ρ‚ΠΊΡƒ Π² master.
  • 18. ΠšΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ Π² master нСльзя? МоТно. Когда ΠΌΡ‹ Ρ‚ΠΎΡ‡Π½ΠΎ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ нашС ΠΌΠ΅Π»ΠΊΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ·Π½Π°Ρ‡Π½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ Π½Π΅ создаст Π½ΠΎΠ²Ρ‹Ρ…. Когда ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Π½Π΅ понадобится ΠΏΠΎΡ‚ΠΎΠΌ Π΄Π΅Π»Π°Ρ‚ΡŒ багфикс для багфикса. ΠŸΡ€ΠΈ этом, измСнСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ.
  • 19. Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Π°Π³Π° ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„ΠΈΡ‡ΠΈ Π”Π΅Π»Π°Π΅ΠΌ Π²Π΅Ρ‚ΠΊΡƒ feature, вся Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΠΎ Π·Π°Π΄Π°Ρ‡Π΅ происходит Π² Π½Π΅ΠΉ ВсС тСстируСм ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ Π½Π° мастСр (git checkout master) ΠœΠ΅Ρ€Π΄ΠΆΠΈΠΌ Π² мастСр Π²Π΅Ρ‚ΠΊΡƒ (git merge feature) Π Π°Π·Ρ€Π΅ΡˆΠ°Π΅ΠΌ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Ρ‹, Ссли Π±Ρ‹Π»ΠΈ ВСстируСм Π—Π°ΠΊΠ°Ρ‡ΠΈΠ²Π°Π΅ΠΌ Π½Π° сСрвСр (git push) УдаляСм Π²Π΅Ρ‚ΠΊΡƒ (git branch -d feature)
  • 22. ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ git log ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π»ΠΎΠ³ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ² git stash Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния, Π½ΠΎ Π½Π΅ ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΈΡ‚ΡŒ git stash Π’ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ измСнСния apply git reset ΠžΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ всС измСнСния Π΄ΠΎ послСднСго ΠΊΠΎΠΌΠΌΠΈΡ‚Π° --hard HEAD
  • 23. ΠŸΠ°Ρ€Π° Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΉ ΠšΠΎΠΌΠΌΠΈΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ΅Π»ΠΊΠΈΠΌΠΈ. Бписок ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π½Π° ΠΏΡΡ‚ΡŒ экранов Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ, Π° Π½Π΅ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ. НС Π»Π΅Π½ΠΈΡ‚Π΅ΡΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π²Π΅Ρ‚ΠΊΠΈ. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ просто ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ git log, Ρ€ΡƒΠ³Π°ΠΉΡ‚Π΅ своих ΠΊΠΎΠ»Π»Π΅Π³ Π·Π° Π½Π΅Π²Ρ€Π°Π·ΡƒΠΌΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ описания ΠΊΠΎΠΌΠΌΠΈΡ‚ΠΎΠ². ВСстируйтС ΠΊΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² master.
  • 24. НС касался Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ рСпозитория Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚ΠΎΠ² ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ Π²Π΅Ρ‚ΠΊΠΈ для совмСстной Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ merge ΠΈ rebase Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠΊ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ fork’ов

Editor's Notes