>> ANNA WHITNEY: Kaya ako pupunta makipag-usap tungkol sa kung paano gamitin Git,
at kung bakit dapat mong pag-aalaga.
Git ay isang bersyon ng control tool.
Ikaw ay malamang na pamilyar sa isang bagay tulad ng Google Docs o Dropbox,
iba pang mga bagay na daan sa iyong magbahagi ng mga bersyon ng mga bagay at subaybayan ang mga pagbabago
na iyong ginawa sa iba't-ibang mga dokumento.
Ang mga bagay tungkol GitHub ay na ito ay na-optimize para code
at ito ay nagbibigay sa iyo ng isang malaking halaga ng kontrol sa kung ano mismo ang mga pagbabago
panatilihin sa iyo at kung ano ang mga pagbabago sa iyo mapupuksa ng at na ang mga pagbabago na iyong isama.
Kaya na ang malaking dahilan kung bakit sa bakit gusto mo nais na gumamit ng Git.
>> Dahil hindi ka maaaring talagang code napakahusay sa Google Docs.
Ikaw ay limitado sa na interface.
Ito ay isang maliit na bit mas mahirap na magsama-sama, tulad ng OK, ang isang tao
ginawa ang pagbabagong ito at ang isang tao ibang tao na ginawa ito ng iba pang mga pagbabago.
At gusto mong panatilihin ang mga unang kalahati ng mga unang pagbabago
at ang ikalawang kalahati ng ikalawang pagbabago at magkaroon ng lahat ng iba pa manatiling pareho.
Git hinahayaan kang gawin ang mga mga bagay na lubhang tumpak.
At kaya kung ikaw ay nagtatrabaho sa software, ito ay medyo pangkaraniwan na gamitin Git sa trabaho.
>> At ito ay medyo marami ang mga pinakamahusay na paraan gawin pakikipagtulungan sa software.
May ilang iba pang mga control na bersyon mga kasangkapan na maaari mong gamitin sa halip,
ngunit may isang bagay na tulad nito ay magiging kinakailangan.
Dahil muli, Google Docs ay hindi tunay
hiwa ito kapag sinusubukan mong isulat ang code samang sa iba pang mga programmers.
Nagkaroon kami ito kamakailang XKCD na noon ay medyo may-katuturan.
Kaya sana sa pagtatapos ng pagtatanghal na ito,
ito ay clear-- isang maliit na piraso clearer-- hindi lamang ng isang listahan ng mga utos
na maaari mong patakbuhin upang makakuha ng lahat ng bagay sa trabaho, ngunit ang isang maliit na kaunti pang
ng mga makatwirang paliwanag sa likod kung bakit ang mga utos sa trabaho.
>> Kaya sabihin tumalon sa kung paano talaga naming gamitin Git.
At talagang, pupuntahan ko sa madaling sabi pop sa paglipas dito.
Kung mayroon kang ang iyong laptop, na nais mong bunutin ito at buksan ang CS50 IDE.
Halos Kami ay pagpunta sa maging nagtatrabaho sa mga terminal,
hindi masyado, makikita namin lamang maging paggawa ng isang maliit na piraso sa mga file.
Kaya kung ano ang iyong pagpunta sa gusto na gawin, lamang upang makakuha ng i-set up dito,
ay una mong pagpunta upang buksan ang iyong SSH key file-- ang file pampublikong key.
>> Hindi ko alam kung nag-uusapang Sobra tungkol SSH key, ngunit kung ano ang nais mong gawin
ito ba.
SIGE?
At ito ay pop up na ito mahabang string ng mga character,
at gusto mo lamang upang kopyahin ang mga ito.
Kopyahin ang buong bagay.
Gawin lamang na.
At pagkatapos ay kung ikaw ay pupunta sa iyong profile sa GitHub, maaari kang pumunta sa I-edit ang Profile,
at pagkatapos ay sa ilalim ng SSH key, ikaw ay pagpunta sa magdagdag ng isang SSH key.
At maaari mong title ito CS50 IDE.
Ba na magkaroon ng kahulugan?
Ang ibig lahat makakuha step na?
>> Ito ay upang lamang na pagkatapos ay kapag kami ay gumagamit ng mga repository sa IDE,
maaari naming direkta at hindi ma-access magkaroon mag-alala tungkol sa pag-type sa aming password
ng lahat ng oras na ginagamit namin ito.
SIGE.
Kaya ngayon kami malapit na.
Kung nais ni sinumang iba pa sa akin si ang mga ito sa GitHub repository,
kung nakuha mo lang dito, ang magagawa ko na ngayon.
Kung mayroon kang isang GitHub account at ikaw hindi sinabi sa akin ang iyong GitHub username,
na ngayon ang panahon.
Walang sinuman?
SIGE.
Pagkatapos ako ay patuloy pa.
>> Lahat tama.
Kaya ipaalam sa unang makipag-usap tungkol sa kung paano gumagana ang isang lalagyan.
Mayroon kang remote pampublikong repository.
Ito ay kung ano ako ay lamang na nagpapakita sa iyo sa GitHub.
Lumikha ako ng isang sisidlan.
Ito ay naka-host sa isang lugar sa GitHub servers.
At nito publiko, kahit sino ay maaaring makita ito.
Pagkatapos ay kung ano kami ay pagpunta gawin ay kami ay pagpunta
upang lumikha ng isang lokal na pribadong bersyon ng mga ito sa aming mga indibidwal na mga computer.
At sa katunayan, maaari kang magkaroon ng marami sa mga na ang lahat
tumuturo sa parehong pampublikong repository.
>> At sa katunayan ito ay posible rin na magkaroon ng maramihang mga pampublikong repositoryo
na gusto mo, makakakuha ka ng ilang impormasyon mula dito
at ilang impormasyon mula sa dito.
Ngunit na malamang na hindi maging may-katuturan para sa iyong huling proyekto o anuman.
Kaya hindi ako pagpunta sa pumunta sa na ngayon.
Subalit kaya kung paano mo makuha mula sa pagkakaroon ito remote pampublikong imbakan sa aktwal
nagkakaroon ng mga lokal na kopya?
Gumamit ka ng isang command na tinatawag git clone, na literal ay nangangahulugan lamang gumawa ng kopya,
tulad ng tunog tulad.
>> At kaya kung ano ang iyong pagpunta sa gawin ay pumunta sa pahina ng repository sa GitHub.
Ikaw ay pagpunta upang kopyahin ang mga clone URL, ang SSH clone
URL, dahil set up lang namin SSH key.
Kung wala kang mga ito, maaari mong i-click ang sa halip sa HTTPS at maaari mong gamitin iyon.
At pagkatapos in dito, sa iyong workspace directory, bagong git clone, at pagkatapos ay
i-paste.
Kapag humihiling sa iyo kung nais mong upang panatilihin ang paggawa nito, at sabihin ninyo ang oo.
>> At ngayon, kung makikita mo, mayroong isang direktoryo
na may pangalan ng taguan, kung paano at bakit, para sa seminar.
At kung ang listahan namin ang file sa dito, maaari mong
makita na ang mga ito ay ang parehong mga file na nakalista sa pahina ng web.
Kaya ngayon ay mayroon ka ng isang lokal na kopya ng repository.
Ipagpalagay natin na nais mong tunay na gumawa ng mga pagbabago dito.
Ang lahat ng iyong mga pagbabago sa Git ay stored-- tulad ng mga pangunahing yunit
ay tinatawag na isang gumawa.
Isang ipasok lamang ang isang tipak ng trabaho na kayo magkasama,
at iyong sinabi sa GitHub, gusto kong i-save ito bilang, ako ng pag-save ko ang aking trabaho,
mahalagang.
>> At ito ay kinilala sa pamamagitan ng kung ano ang tinatawag na isang gumawa hash, na
ay talaga lamang ng isang natatanging ID.
Ngunit ang paraan na ito ay nakabuo ng ay talagang, GitHub
ay may ilang mga format ng mga tulad ng uulat ng lahat ng mga pagbabago na
talagang nagpunta sa na gumawa, at pagkatapos ay ito hash na talaan ng mga pagbabago.
Kaya ang gumawa ng hash aktwal na nagsasabi iyo kung ano ang nangyari sa na gumawa,
ano ang mga pagbabago na ginawa mo.
>> Kaya ang gagawin ng isang gumawa, sabihin pumunta sa dito at kung ikaw lamang
buksan ang file, names.txt, na maaari mong gawin mula sa command line
may opennames.txt, at ito ay pop up up dito.
Pagkatapos ay maaari mong idagdag ang iyong pangalan.
At pagkatapos ay i-save ito.
At ngayon, kung nag-type ka git katayuan, maaari mong makita ang
na ang filenames.txt ay nabago.
Kaya alam ng Git na ginawa mo sa isang pagbabago.
Wala ang nai pa nagawa.
>> Kaya upang sabihin sa Git, ito ay isang file na may pagbabago sa loob nito
na gusto ko sa iyo sa tunay na i-save, gawin mo gitaddnames.txt.
At ngayon kung gagawin mo status git, bibigyan ka makita na ito ay hindi pa rin nakatuon.
Ngunit ngayon alam na ito ay isang palitan na nais mong gumawa.
Talaga kung ano ang nangyayari ay mayroon ka sa iyong direktoryo ng pagtatrabaho,
at Git ay may isang index ng kung ano ang ang nangyari sa mga nagtatrabaho direktoryo na
Handa nang ginawa.
At kaya kapag gumawa ka ng mga pagbabago, na ang mga ito sa iyong direktoryo ng pagtatrabaho.
Ang mga ito sa iyong computer.
Ngunit hindi sila ay ilagay sa index na pa.
>> At kaya kapag ginagawa namin git add, ito gumagalaw mga bagay-bagay mula sa mga nagtatrabaho direktoryo.
Well, ang mga ito ay pa rin sa ang nagtatrabaho direktoryo.
Ngunit ang lahat ng ito ng mga kopya ng mga mga pagbabago na ito sa index.
At kaya pagkatapos ay kapag ikaw huwag git commit-- saan
ang susunod na bagay hindi namin pagpunta sa do-- ito talaga
nagkakasala ang mga ito at inilalagay ang mga ito sa permanenteng kasaysayan ng iyong mga repository.
At kapag gumawa ka, dapat mong laging maglagay ng isang nagbibigay-kaalaman na gumawa ng mensahe.
>> Kaya ngayon kung gagawin natin ang status git, ito sabi walang upang ipasok ang,
dahil ang lahat ng mga pagbabago na Ginawa ko na ngayon ay nakatuon.
Pupunta ako sa itapon ang mga di-sinasadyang mga pagbabago na ginawa ko na iyon.
Kaya ngayon maaari mong makita, sabihin sinasabi namin mahalagang lamang
ginawa ang purple gumawa, di ba?
Lang kaming nagdadagdag ito sa ang katapusan ng kasaysayan na ito
na dati nang ginawa ko ang mga file, names.txt, kapag ako unang nilikha ito,
marahil na ang orange ipabilanggo.
At kaya pagkatapos na ito gumawa ng hash sa ilalim ng mga lilang diyamante
Gusto paanuman indicate-- hindi sa tao nababasa form--
ngunit nais paanuman magpahiwatig sa internals GitHub ni
na ginawa namin ito tiyak baguhin sa file names.txt.
>> Kaya ngayon ay mayroon ka ng isang pagbabago sa iyong mga lokal na pribadong bersyon ng repository.
Ngayon mo makita ang napupunta error sa parehong paraan, at malinaw naman ito
hindi magiging lubhang kapaki-pakinabang kung maaari naming lamang kailanman nais
gawin ang mga pagbabago na sa remote repository,
ngunit kami ay walang paraan ng paggawa ng aming sariling mga pagbabago.
Kaya gusto namin upang itulak ang aming mga pagbabago sa remote repository.
Ngunit bago mo itulak ang iyong mga pagbabago sa mga repository,
palagi kang may upang hilahin tiyakin na mayroong
ay hindi nai-anumang mga bagong pagbabago sa panahon mula noong una mong ginawa ang pagbabagong iyon.
>> Kaya ako ng pagpunta sa gawin ang isang git pull, at sinasabi nito na hanggang sa petsa,
dahil siguro wala sa iyo itinulak habang ako ay ginagawa ito.
Ngunit kaya ngayon ang maaari kong gawin git push.
At ngayon, kung pumunta ako dito, maaari ko makita na ang mga pinaka-kamakailang magkasala
ay ang isang ito na ginawa ko.
Ang pagbabagong iyon ay ngayon sa ang remote repository.
Kaya kahit sino na may kanilang mga computer out, sige at idagdag ang iyong pangalan.
Tiyaking upang hilahin bago mo itulak, at pagkatapos itulak sa remote repository.
>> At kaya tayo ay dapat ma upang makita.
Kaya ang dahilan na ang lagi mong nais na pull bago mo itulak
ay dahil kung sinubukan mong itulak at wala ka, at ikaw ay
nawawala ang ilang mangako na sa remote server, ito lang magbibigay sa iyo ng isang error.
Ngunit kung hindi ito ay magbibigay sa iyo ng isang error, ito ay papatungan
kung ano ang nakaraang tao ay itinulak.
At hindi mo nais na mawala ang kanilang mga trabaho.
Kaya sabihin makita.
>> Kahit sino ay tapat na paraan na ito gumagana?
Madla: [hindi marinig].
ANNA WHITNEY: Ano ang mangyayari kapag you--
Madla: [hindi marinig].
>> ANNA WHITNEY: Kaya ikaw ay nagkakaproblema paghila.
Ano ang sinasabi ng mga error kapag sinusubukan mong hilahin?
>> Madla: [hindi marinig].
ANNA WHITNEY: May walang error kapag ikaw pull.
Hindi nito sinasabi ang anumang bagay kapag ikaw pull?
>> Madla: [hindi marinig].
ANNA WHITNEY: OK.
Kaya hindi ko alam talaga tungkol sa iyong mga tiyak na kapaligiran
na ikaw ay may karapatan doon.
Subalit kaya kung ano ang error na makakuha ka kapag sinubukan mong itulak?
>> Madla: [hindi marinig].
>> ANNA WHITNEY: OK.
Subukan git pull pinagmulan master.
Kaya tulad nito.
>> Madla: [hindi marinig].
>> ANNA WHITNEY: Muli, hindi ko alam kung tunay marami tungkol sa kanyang kapaligiran ng pagbuo
partikular.
Ngunit kapag lamang ako nakapunta pag-type git pull, iyon ang
isang maliit na piraso ng glossing sa paglipas ng exactly-- ay karaniwan mong sabihin,
o baka hindi normal, ngunit maaari mo sabihin sa Git kung saan mismo upang hilahin mula sa.
Kaya kung ano ang remote server upang hilahin mula sa.
Dahil tulad ng sinabi ko, may maaaring higit sa isa,
kahit na hindi karaniwan ay sa mga uri lamang ng bawat practice araw-unlad.
>> At kami ay makipag-usap sa isang nang kaunti tungkol sa mga sanga.
Iyan ay tunay na ang susunod na lugar kami pupunta.
At kaya master ay magiging ang pangalan ng branch.
Ba na tulong?
Hindi?
Still hindi ako nagtatrabaho?
Ay kahit sino pa kayong mga ito gumagana?
SIGE.
Kaya ang maaari kong magpanggap.
Maaari ko bang magpanggap na ako isang dagdag na tao, ngunit ikaw ay
pagpunta sa may upang bigyan ako ng isang pangalawang upang makakuha ng na-set up.
>> Kaya ang ginagawa ko ay hindi ako creating-- ako cloning
ang lalagyan papunta sa aking computer.
Ngunit mayroon kang kong magdagdag ng isa pang hanay ng SSH key upang ang maaari kong gawin iyon.
SIGE.
Kaya ngayon, yes?
>> Madla: Kaya ang berdeng tuldok sa tabi ng ilan sa mga ito, kung ano ang ibig sabihin nito?
ANNA WHITNEY: Sa tabi ng SSH key?
Iyon ay nangangahulugan lamang na ko ginagamit sa mga SSH key kamakailan.
Kaya sabihin gawin ang parehong bagay.
Gumagana ito sa ngayon?
SIGE.
>> Madla: [hindi marinig].
>> ANNA WHITNEY: OK.
Kaya ngayon kung ako buksan names.txt, Ang dapat kong ma-see--
kaya ikaw ay nagkaroon na baguhin ang isang conflict.
Lahat tama.
Kaya sabihin lamang magtanggal ng mga ito.
Susubukan naming makipag-usap tungkol merge conflicts sa isang segundo lang,
ngunit ito ay kung bakit palagi kang gusto tiyakin na ang mga pull nagtrabaho
bago subukan mong itulak.
At ayusin ang anumang mga kontrahan bago mo itulak.
SIGE.
>> Subalit kaya narito ang isang halimbawa ng kung ano ang gusto mong gawin pagkatapos.
Kung pupunta ako sa dito, tiyakin na Ako ang pinaka-up sa mga pagbabago ng petsa,
OK, ngayon ako lamang ang pagpunta upang gamitin ito.
Right, OK.
Kaya ginawa ko ang isang pagbabago sa dito.
Mayroon akong mag-ingat.
Mayroon akong upang talagang i-save ito.
Now-- OK.
Kaya may ilang mga kakatwang mga bagay-bagay pagpunta sa dito,
ngunit huwag mag-alala masyadong maraming tungkol sa na.
>> SIGE.
Kaya ngayon kung ako buksan names.txt at idagdag ko muli ang aking pangalan,
ngayon ay maaari kong gawin ang parehong bagay dito.
At mapapansin mo na sa halip ng paggawa ng magdagdag at pagkatapos ay gumawa,
Ako ng paggawa ng mga shortcut ng lamang ang paggawa git gumawa-a at pagkatapos m.
Kung saan, kung mayroon kang isang file na naka existed-- sa ibang salita,
hindi mo nilikha ang isang bagong file-- wala ka tunay na may sa hiwalay idagdag ito.
Maaari mo lang sabihin sa Git, kapag ako magkasala, gusto kong idagdag lamang ang mga ito nang direkta.
Ngunit kung ikaw ay lumikha ng isang bagong file, mayroon ka sa partikular na idagdag ito,
dahil kung hindi man Git hindi susubaybayan ito hanggang partikular sabihin mo ito sa.
Paumanhin?
>> Madla: [hindi marinig].
>> ANNA WHITNEY: Kaya ang bagay tungkol Git ay na sa order
na magbigay sa iyo kaya magkano na kontrol sa kung ano mismo ang mga pagbabago na iyong ginagamit
at kung alin ang hindi ka, ito ay paminsan-minsan ng isang maliit na
hindi user friendly, na ang dahilan kung bakit ako dito.
Dahil walang isa pangangailangan upang magbigay ng isang pagtatanghal sa kung paano gamitin ang Google Docs.
>> Madla: Ito ay depende sa madla.
>> ANNA WHITNEY: OK.
Walang pangangailangan upang bigyan isang pagtatanghal sa kung paano
upang gamitin ang Google Docs sa isang grupo ng CS50 mga mag-aaral.
Kaya saglit kong nabanggit na sanga.
At sa simula pa lamang, na comic na ako ay nagpakita ng
usapan tungkol sa Git pagkakaroon ng isang modelo tree.
Kaya kung ano ang ibig sabihin nito ay, sabihin natin na ang mga repositoryo, tulad ng paraan ako
Mayroon ito sa ngayon, ay ang pulang linya.
At alam mo, ito ay ginawa up ng isang grupo ng mga gumagawa.
Isipin tulad ng ilang haba kasama na line ay katumbas ng gusto ng isang gumawa.
>> O isang bagay tulad ng, may isang bungkos ng iba't-ibang mga gumagawa doon.
Ay hindi talagang mahalaga kung gaano karaming.
Subalit kaya sabihin natin na ngayon ay mayroon akong isang nagtatrabaho piraso ng software na
sa pagpunta doon.
Sa halip na kumakatawan sa aming maliit na repository na lang para sa pagsubok,
marahil ito ay isang aktwal na proyekto.
Siguro ito ay ang iyong huling proyekto.
Marahil ito ay isang piraso ng software na tulad ng aktwal na ginagamit sa komersyo.
Kapag nais mong magdagdag ng isang bagong tampok na ito, ikaw ay ayaw mong masira ang iyong umiiral na code.
>> Kaya sa halip na paggawa ang mga pagbabagong iyon karapatan
sa gitna ng iyong mga nagtatrabaho code, maaari kang lumikha ng kung ano ang tinatawag na isang branch.
At kung saan ang mga sangay ay nagsisimula, ang lahat ng bagay ay kapareho
sa iyong mga rehiyonal na sangay, na ay tinatawag na master, sa pamamagitan ng default.
At pagkatapos habang nagdadagdag ka ng higit pa nagkakasala, magkaiba sila.
At maaari kang humantong sa pagkakaroon ng mas maraming nagkakasala sa isang sanga kaysa sa iba.
Maaari ka ring magkaroon ng mga sub sanga off ng iba pang mga sanga.
>> At kaya kung nais mong lumikha ng isang sangay, at mga sanga
maaaring local-- ibig sabihin na hindi lang nila sa iyong machine,
ang mga ito ay para lamang sa iyo nang personal nagtatrabaho sa na feature--
o kung maaari mong itulak ang mga ito sa ang remote repository at ikaw
at ng ibang tao ay maaari makipagtulungan sa na branch,
makipagtulungan sa mga tampok na iyon sa paraan na gagawin mo sa master.
Kaya ngayon ay kasalukuyang ako sa master branch.
IDE ay smart sapat na upang sabihin sa sa akin ay hindi lamang kung ano ang direktoryo ako sa,
ngunit kung ano ang partikular na sangay ako in.
>> Kaya ngayon kung gusto kong lumikha isang bagong sangay, ang command
Medyo unintuitively git b checkout, para sa branch.
At pagkatapos ay ang pangalan na ako gusto upang bigyan ang mga sangay.
Kaya ako ng pagpunta sa gumawa ng isang branch tinatawag Anna branch.
At ngayon sinasabi nito ako sa Anna branch.
At kung ako ay tumingin sa mga mga file, pagkatapos ay makikita mo
makita na ang mga ito ay eksakto ang parehong bilang sila ay.
Hindi ako nagbabago kahit ano sa pamamagitan ng pagpunta sa isang branch.
>> Ngunit ngayon hayaan mo akong sabihin na gusto kong gumawa ng ilang mga pagbabago sa mga sangay na ito.
Kaya ko na ito sa iba pang mga file, loremipsum.txt,
lamang ito ay nakuha ng grupo ng mga walang kuwentang mga salita sa loob nito.
Kaya kung buksan ko ito, sabihin natin na gusto ko upang baguhin ang unang salita sa aking pangalan.
Maaari mong gawin ito sa iyong sariling.
At pagkatapos ay i-save ko ito.
Ngayon ako pagpunta upang isara ito kaya hindi ko panatilihin sinasadyang
ine-edit ang mga file kapag hindi ko ibig sabihin na.
Kaya ngayon maaari kong ipasok ito.
>> At hindi ako pagpunta sa itulak ipasok ito.
Ito ay lamang ang pagpunta sa mga lokal na para sa ngayon.
Dahil sa kasalukuyan, wala pa ang branch sa dito tinatawag branch Anna.
Kaya kong lumikha ng isa.
Kung Nais kong ibahagi ang aking mga trabaho sa Anna sangay sa lahat ng ka guys,
Kaya kong lumikha, maaari ko bang itulak, at Git sabihin sa akin kung paano lumikha ng isang sangay
tinatawag na Anna branch sa ang remote repository.
>> Ngunit kung ikaw ay nagtatrabaho lamang sa isang tampok at naka ka nagtatrabaho ang isa lamang sa mga ito,
ito ay ang iyong katangian, pagkatapos ay walang partikular na dahilan
upang itulak ito sa remote repository.
Maaari itong kumilos bilang isang backup.
Ngunit kung ikaw ay medyo ligtas na ang iyong computer ay hindi pagpunta sa mamatay,
pagkatapos ay may ilang mga pakinabang sa pinapanatili lamang ito sa iyong computer.
Kahit na hindi ko ay pumunta sa mga maliban kung mayroon kaming ilang oras sa dulo.
Kaya ngayon ay mayroon akong isang branch tinatawag na Anna branch.
>> At ipaalam sa lumikha sa akin lamang ng isang file.
Ito ay isang paraan ng paglikha ng isang walang laman file na may isang ibinigay na pangalan sa Unix
lang sa mga katangian ng command.
Kaya ako lamang ang pagpunta sa hawakan ng isang file na tinatawag na Anna.
Ngayon kung I-- at maaari mong makita ang na ang file ay there--
sinasabi nito na may isang di-nasubaybayang file.
Kaya ngayon ang gagawin ko kailangan mong gawin git add.
At ngayon alam na umiiral ang bagong file.
>> Madla: [hindi marinig].
ANNA WHITNEY: On Anna branch.
Oo.
Sa isang segundo lang, kami ay makita na kapag Pumunta ako pabalik sa master, ito ay hindi doon.
Ang command upang makita ang mga umiiral na sanga ay git branch,
at ito ay nagpapakita sa iyo kung saan ang isa ikaw ay on.
Mayroong isang pagkakaiba-iba ng iba pang mga utos na kaugnay
sa na na gawin mo iba't ibang bagay sa mga sanga,
ngunit lamang git branch sa sariling kalooban ipakita sa iyo kung ano ang sangay kung nasaan ka,
at kung ano ang iba pang mga sanga na sa iyong lokal na makina.
>> Kaya ngayon na bumalik sa master, gagawin ko git master checkout, nang walang b.
Gamitin mo ang b kung ikaw ay paglikha ng isang branch.
At kung hindi ka na sa paglikha ng isang sangay, at pagkatapos ay ang pangalan ng utos
ay gumagawa ng isang maliit na mas kahulugan, dahil tulad ng ipaalam sa akin pumunta tingnan ang master
at makita kung ano ang nangyayari doon.
Kaya ngayon kung gagawin ko ito, walang file Anna.
Kung binuksan ko ang file na ito, maaari mong makita na walang pagbabago sa mga ito.
At kaya, ngayon, maaari ba akong gumawa ang ilang mga pagbabago sa paglipas dito.
Kaya ang maaari kong sulatin sa malaking titik na ito, halimbawa.
>> At maaari kong pindutin ang isa pang file na tinatawag na master.
At kaya ngayon maaari mong makita ang mayroon ako ang ilang mga pagbabago na hindi ko na itinanghal
na sa loremipsum, at ako ay may ito bagong file.
Kaya ngayon ako pagpunta upang idagdag ang mga bagong file.
At ako pagpunta sa gumawa.
At muli, kahit na idinagdag ko isang file na partikular at hindi
idagdag ang mga file na na umiiral, dahil gumagamit ako ng mga a,
lahat ng mga file na nai umiral ay makakakuha ng alaga.
SIGE.
>> Kaya ngayon sanga ay pa rin doon.
At isang branch pa rin doon.
Kaya kong bumalik sa Anna sangay at ipakita sa iyo na ang aking mga pagbabago dito sa master
hindi apektado na, ngunit malaman ko sa iyo nakuha ang ideya mula sa kapag nagpunta ako sa master
at nagtrabaho ito na paraan.
Ngayon, sabihin natin na gusto ko na talagang isama ang mga pagbabagong iyon sa master.
Natapos ko ang aking tampok na ito.
Ito ay gumagana.
Sinubukan ko na ito, ito ay gumagana.
At ngayon nais ko na isama na tampok
sa pangunahing piraso ng software.
Natapos mo na ang pinakasimpleng bersyon ng iyong huling proyekto,
ngunit pagkatapos ay ikaw ay tunay na ay nagkaroon ng isang maliit na dagdag na oras
kaya ikaw ay bumalik at nilikha ang bagong tampok na ito,
at ngayon gusto mong ipagsama ang mga ito sa gayon ay Maaari mong aktwal na ipakita ito sa iyong tf.
>> Hindi nakakagulat na ito ay tinatawag na isang git merge.
At nakita mo ng mas maaga kung paano mo ay maaaring magkaroon ng conflicts merge,
at ikaw ay pagpunta sa Mayroon upang malutas ang mga ito.
Kaya kung pumunta ako dito at mula sa master-- ngayon ako sa master
at gusto kong sumanib sa pagbabago mula sa Anna branch--
kaya ako pagpunta sa gawin git merge Anna branch.
At ito ang unang sumusubok na automerge.
At kung walang mga magkasalungat na mga pagbabago,
kung ako ay lamang na nilikha sa maghain Anna sa Anna branch,
at nilikha lamang ang file master sa master branch,
pagkatapos ay ito lamang gawin isang auto merge at ito
ay awtomatikong ipasok ang mga resulta.
>> Ngunit kung mayroon kang sumanib conflicts, pagkatapos mo
upang ayusin ang mga salungatan bago ang merge maaari sige.
Kaya ngayon, kung pumunta ako sa loremipsum, nakita namin ang parehong bagay
na nakita natin dati, kung saan mayroong ang dalawang magkaibang mga pagbabago.
At maaari kong tanggapin ang alinman sa isa sa kanila.
Maaari ko kahit na mayroon ang mga ito maging isa sa itaas ng iba pang,
kung na saysay para sa kung ano ang ginagawa ko.
Sa code, karaniwan na iyong pupuntahan na gusto ng isang bersyon o ng iba pang
kung ikaw ay parehong ginawa ng mga pagbabago sa na.
>> Tila tulad ng mayroong marahil, sa interface na ito, ang ilang mga magarbong paraan para sa akin
upang tanggapin ang isang hanay ng mga pagbabago o sa iba.
Ngunit dahil hindi ko talaga alam kung paano na gumagana,
Lamang ako ng pagpunta sa subukan na gawin ito sa pamamagitan ng kamay, na kung saan ay hindi gumagana out nang maayos.
Kaya hayaan mo akong gawin ito ang paraan ko alam kung paano, kung saan ay [hindi marinig].
At tumagal ng isa sa ipaalam master, sapagkat ang aking pangalan ay talagang
ay hindi na mahalaga na ito pangangailangan upang pumunta sa lahat ng bagay.
>> Ngayon lang ipakita sa iyo na na aktwal ginawa kung ano ang sinabi ko ito ay, may ito ay.
Kaya ngayon, kung gagawin ko git status-- at maaari kang makita ito alam na ito ay sa merge--
kaya dahil ako ay nagbago ang file na ito na nagkaroon ng mga sumanib sa mga ito,
Mayroon akong muli upang idagdag ito sa gayon ay ito alam ito ay ligtas na magkasala.
Kaya ako pagpunta upang idagdag ito.
At pagkatapos lamang ako ng pagpunta sa gawin magkasala sa halip na ilagay sa isang mensahe,
dahil ito ay awtomatikong bumuo ng isang gumawa ng mensahe na nagsasabing isang bagay
tungkol sa kung ano ang mga salungatan ay.
>> Ngayon sumanib gumawa ng mga mensahe ay hindi palaging sobrang kapaki-pakinabang,
ngunit kung may ay hindi anumang mga kontrahan, ito Gusto auto lamang bumuo ng mensahe na
at hindi mo gagawin kinakailangang magkakaroon ng isang pagkakataon upang i-edit ito.
Ito ay awtomatikong pumunta lamang sa iyong gumawa ng kasaysayan sa mensaheng ito.
Hindi ko talaga alam kung paano, ah yes.
Mayroon kaming pumunta.
Iyon lamang, ito ay bumubukas ng awtomatikong sa isang text editor na
mangyayari upang maitakda bilang mga default. Ako ay maaaring magkaroon sa halip
tapos git gumawa m at pagkatapos ay lamang ng isang walang laman na quote na string.
At ito ay awtomatikong gagawin gawin ang mensahe merge
walang ako may sa pakikitungo sa anuman editor
ito palagay ni ay dapat gamitin ang mga ito para sa mga gumawa ng mensahe.
>> Lahat tama.
Kaya na ay isang pulutong ng mga utos at isang pulutong ng mga lamang mga piraso ng impormasyon
napakabilis.
Kahit sino ay may anumang mga katanungan ba?
Alam ko na karamihan ay hindi sa iyo tunay na may up at pagpapatakbo ng mga ito.
>> Madla: Kaya ang ginagawa ng Anna branch Umiiral pa rin sa puntong ito [hindi marinig]?
>> ANNA WHITNEY: Kaya kung gagawin ko git branch-- kaya tanong ay,
ay umiiral pa rin ang Anna branch ngayon na ipinagsama ko na ito sa master.
Oo ito ay, ngunit maaari ko ba itong tanggalin.
Kaya ang pangkaraniwang bagay ay, oo, kapag lumikha ka
isang sangay ng tampok at ang tampok ay may ay ganap na ipinagsama sa master,
at hindi ka na pagpaplano sa paggawa anymore gumana sa na tampok na ito,
kapag lumikha ka ng isang bagong tampok o kung ikaw Nais upang simulan ang paglikha ng isang bagong tampok,
Gusto mong lumikha ng isang bagong sangay lamang para sa kapakanan ng kalinisan at organisasyon.
>> Kaya ngayon kung ano ang maaari kong gawin upang tanggalin na branch ay sangay git d Anna branch.
At kung hindi ako ay ipinagsama sa Anna sangay bago ko sinubukan upang gawin iyon,
ito ay magbigay sa akin ng isang error na nagsasabi na Anna branch ay hindi ganap na ipinagsama.
Sa ibang salita, ang mga pagbabago na sa Anna branch ay hindi kahit saan pa.
Kaya kung tatanggalin mo ang branch, mawawalan ka ng mga pagbabagong iyon.
Ngunit dahil ako lamang Pinagsama ito, sapat na smart Git ni
upang malaman na Anna branch ay ganap na nakasama sa master.
>> At ito ay tunay na posible upang tanggalin ang isang branch kung talagang
nais na itapon ang iyong mga pagbabago.
Ito ay posible na tanggalin ang isang sangay na ito ay hindi isinama.
Lahat ng tunay na may sa gawin ay baguhin ang lowercase d doon
sa isang uppercase D. Ngunit ito ay sa pangkalahatan ay hindi isang magandang ideya,
na ang dahilan kung bakit ikaw ay makakuha ng error kung susubukan mong gawin iyon.
Ibang tanong?
>> Madla: [hindi marinig].
ANNA WHITNEY: Kaya kung mayroon kang test at mga kapaligiran ng produksyon,
kung paano mo maaaring nauugnay sanga sa mga iyon?
Kaya ito ay isang halimbawa lamang ng isang sangay na para sa isang tampok
at pagkatapos mong magtanggal ng mga ito sa sandaling ito ay ipinagsama.
Ito ay posible rin na may mahabang tumatakbo sanga
na gamitin mo para sa ilang mga bahagi ng proseso ng iyong pag-unlad.
Kaya maaari rin na mayroon kang isang pagsubok bangko.
At mayroong lahat ng uri ng mga paraan upang maisama ang iba pang mga serbisyo
isabit up at makipag-ugnay sa Git.
Kaya maaari kang magkaroon ng iyong panubok na branch awtomatikong magpatakbo ng mga pagsubok sa na code.
>> Kaya tulad ng mayroon ka sa iyong sangay ng pag-unlad,
at pagkatapos ay mayroon kang ang iyong produksyon sangay, at mayroon kang ang iyong pagsubok bangko.
At gusto mong gawin ang iyong mga pagbabago mula sa mga sangay ng pag-unlad,
paanuman isama ang mga ito sa pagsubok bangko gamit ang ilan sa daloy ng trabaho, kung saan
ay maaaring maging isang merge, gusto ko lang nagpakita.
At pagkatapos ay gusto mo, mula sa doon, ito ay magpatakbo ng mga pagsubok.
Ikaw ay maaaring magkaroon ng ito set up upang awtomatiko itong gawin, kahit.
At pagkatapos ay maaari mong isama ito sa iyong produksyon branch.
Nasagot ba ang iyong katanungan?
Anumang iba pang mga katanungan?
>> Dahil mula dito, pumunta kami mula sa standard na mga utos git
na ikaw ay tiyak na gamitin ang anumang mga oras na iyong sinusubukan na gawin ang isang proyekto
at kumuha sa isang bagay na Medyo mas pribado
at iba pa tulad ng ibang paraan ng paggawa ng ilan sa mga parehong bagay
na na usapan natin ang tungkol.
>> Madla: [hindi marinig].
>> ANNA WHITNEY: Hindi, tulad ng mas karaniwan.
SIGE.
Gayon ang bawa't medyo malinaw sa mga ito?
Sa kung ano ang nangyari sa ngayon at kung bakit ito ay kung paano namin gawin ang mga bagay?
Ba na magkaroon ng kahulugan?
Magaling.
Kaya sa halip na pinagsasama, o minsan sa karagdagan sa pinagsasama,
may isa pang paraan ng pagsasama pagbabago mula sa isang branch sa iba,
at na ang tinatawag na isang rebasing.
At ito ay halos tulad ng ang kabaligtaran ng isang merge.
>> Kaya rebasing ay naiiba mula sa ang lahat ng bagay na usapan natin ang tungkol sa ngayon
dahil ito ang tunay na rewrite ang iyong kasaysayan.
At ilang mga tao na isipin na ito ay isang bagay
dapat hindi ka na kailanman gawin sa Git.
Ngunit ito ay isang tampok na Git mga alok, kaya ako ng opinyon
na ito ay ganap na multa hangga't tulad ng alam mo kung paano gawin ito nang tama.
Ito ay tiyak na ang kaso na kayo hindi dapat isulat na muli pampublikong kasaysayan.
Kaya ito ay kung ano ako ay pakikipag-usap tungkol sa mas maaga kapag
Sinabi ko may ilang mga pakinabang sa pagkakaroon ng isang sangay na
lamang ang mga lokal sa iyong machine.
Ito ay nangangahulugan na maaari mong gamitin ang mga trick tulad ng na ito, at makikita ko pumunta sa isang maliit na mas kaunti
bakit maaaring gusto mong gawin ito sa isang segundo.
Ngunit lamang napakalaking disclaimer upang simulan sa, hindi kailanman muling isulat pampublikong kasaysayan.
Dahil nakita mong mas maaga kung ano ang mangyayari kung hindi mo gagawin ng tama ang merge,
kapag ikaw pull.
>> Kung rewrote mo, kung ako ay isulat muli ang kasaysayan
at pagkatapos ay kayo ay sinusubukan upang hilahin, Git ay pagpunta mabaliw sa 1,000 mga error
sinasabi may mga gumagawa misting dito na gusto, na mayroon ka.
Ngunit pagkatapos ay mayroong iba pang mga gumagawa hindi mo na kailangang na dito.
Kaya ito isipin na ang lahat ng bagay ay dapat na may na nangyari.
Hindi na ito ay tumutugma sa kung ano ay sa iyong machine.
Huwag kailanman gawin na upang ang iyong mga collaborator.
Huwag kailanman isulat na muli pampublikong kasaysayan.
>> Ngunit maaari mong muling isulat ang lokal na kasaysayan, at ilang mga magandang dahilan upang gawin iyon.
Kaya una, ano ang mangyayari kapag rebase iyo?
Sabihin natin na mayroon akong ang master sangay sa red,
at pagkatapos ay ang mga asul na branch sa asul.
Habang ako ay sa asul na branch Hindi ko type git rebase master,
kaya ito ay isang uri ng kabaligtaran direksyon mula sa pinagsasama.
Ako rebasing sa mag master.
At ito ay nangangahulugan na literal na aking iniinom ang gumawa
na ginawa ko sa asul na branch at inilagay sa dulo ng master
bilang kanilang base.
>> Kaya mahalagang kung ano ito ay ito ay isinasama
lahat ng mga gumagawa na nangyari sa master dahil ang punto branch
tulad ng kung sila ay nangyari bago ang lahat ng mga gumagawa na sa asul na branch.
Ba na conceptually magkaroon ng kahulugan?
Kaya ang pangunahing dahilan upang gawin ito ay na ito ay nagpapahintulot sa iyong mga gumagawa talaga
sort of-- isang indibidwal magkasala ay maaaring maging isang yunit ng trabaho
at na maaaring maging malinaw sa kasaysayan.
At hindi ka magkaroon ng mga sumanib nagkakasala kung saan ito ay hindi halata
kung ano ang tampok na aming ipinagsama o kung ano ang mga pagbabago ay aktwal na ginawa,
dahil hindi ka magkaroon ng access sa aktwal na mga gumagawa na
ay ginawa bago ang sumanib, di ba?
>> Ito ay hindi ito ay hindi laging malinaw mula sa log, na aktwal na, na ang
isang bagay upang tumingin sa.
Kung gagawin ko ito, maaari mong makita ang log.
Ang command ay lamang makakuha ng mag-log, at maaari mong tumingin sa pamamagitan ng lahat ng mga nakaraang gumagawa.
Kaya tingnan mo may isa pang sumanib magkasala in dito.
Ito ay kung ano ang nangyari kapag ikaw ay nagkakaroon ng problema paghila at pagtulak ng mas maaga.
Kaya ang ilan sa mga ito ay medyo malinaw, ang mga ito mga mensahe na gusto, nagdagdag ako ng isang file,
Ilagay Scott ang kanyang pangalan sa file.
Mga bagay na tulad ng.
>> Ngunit pagkatapos kami ay may mga merge nagkakasala at ito ay hindi talagang halata
ano ang nangyayari.
Rebasing hinahayaan kang maiwasan na.
Kaya kahit na kung nais mo pa upang sumanib, kahit na ikaw pa rin
nais na gawin ang eksaktong parehong bagay, maaari mong maiwasan ang
pagkakaroon ng isang merge magkasala dahil sabihin natin na na- ni gawin ito upang ipaalam.
Pupunta ako upang lumikha ng isang bagong sangay.
At ngayon ako sa bagong branch.
At ako pagpunta sa gumawa ng ilang mga pagbabago sa dito, lumikha lamang ng isang bagong file.
>> Lahat tama.
At ngayon, nang sumanib ako, kaya pa rin ako lamang ang pagpunta upang sumanib sa normal na paraan.
Pupunta ako sa bumalik sa master.
At ako pagpunta upang sumanib bagong branch.
At makikita mo na sinasabi nito fast forward.
Iyon ay nangangahulugan na mayroong lamang mga pagbabago sa isang bahagi ng merge.
Kaya ito ay hindi kailangang mag-alala tungkol sa kung aling mga pagbabago ang dapat kong tanggapin.
Hindi nito kahit na may sa auto malutas conflicts.
Hindi nito kahit na kailangang mag-isip tungkol sa kung mayroong salungatan.
Dahil alam ito doon ay mga gumagawa ay idinagdag lamang sa isang bahagi ng merge.
Kaya ang maaari kong ilipat lamang ang ulo ng iba pang sangay ng hanggang sa pagkatapos ng mga gumagawa.
>> Kaya kung ano ang maaari mong gawin may rebasing ay matiyak
na ang lahat ng commits-- sorry, na ang lahat ng merges ay fast forward merges.
Kaya kung mayroon kang isang lokal na sangay lang sa iyong computer
at nagawa mo ang isang grupo ng mga pagbabago sa doon,
isa pang pag-unlad ang nangyayari sa master.
Ang lahat ng iyong mga collaborator, ang lahat ng iyong katrabaho, lahat ng mga miyembro ng iyong proyekto
Mayroon na-paggawa ng kanilang mga sariling mga pagbabago sa master.
Siguro ang kanilang orihinal na nagsimula ang kanilang mga pagbabago sa mga sanga
ngunit pagkatapos na ipinagsama nila ang mga ito sa o sa isang bagay.
Ngunit ang pagbabago ay nangyari sa master.
>> At ikaw ay nagtatrabaho sa isang tampok at ito ay sa isang ganap na hiwalay na file,
kaya walang conflicts.
Maaari mong rebase iyong sangay na lokal na lamang sa iyo, sa mag-master.
Kaya nga kapag pagsamahin mo ito sa, ikaw ay Hindi mo na kailangang mag-alala tungkol sa anumang ng mga ito.
Ito lamang ay isang fast forward merge.
At ito ay hindi kahit lumikha ng isang merge magkasala.
Ito literal lang sabi, OK, maaari ko ilagay ang lahat ng mga mga gumagawa sa sangay na ito
din.
Ba na magkaroon ng kahulugan?
>> Ba magkaroon ng kahulugan kung bakit gusto mo nais na gawin ito, at kung paano mo gustong gusto mong gawin ito?
>> Madla: Kaya sa ibang mga salita, ikaw ay sinasabi
kumuha ng lahat ng mga trabaho na ang nangyaring tapos na master [hindi marinig].
ANNA WHITNEY: Oo, eksakto.
Kaya ito ay maaaring mukhang isang maliit na uto dahil sa ito ay halos tungkol sa aesthetics.
Ito din ay isang maliit na piraso tungkol sa paggawa ng bagay na mas malinaw.
Pero hindi ito ang paggawa ng isang malaking pagkakaiba sa kung paano mo talagang isulat ang iyong code.
Isang bagay na maaaring maging mas kapaki-pakinabang sa mga regular na pagsasanay
ay kapag ikaw ay gumagawa git pull, maaari mong idagdag ang pagpipiliang ito sa mga ito.
Ah.
So dahil ako ay isang grupo ng mga mga bagay-bagay, ako ay may isang kontrahan.
Ngunit kapag ikaw ay gumawa ng isang rebase, maaari kang magkaroon ng salungatan
tulad ng mayroon ka sa isang pagsasama, at maaari mong malutas ang mga ito sa parehong paraan.
>> Subalit kaya ang pangunahing ideya ay na kapag ginagawa ko ito,
ito sabi ni unang rewinding ulo upang i-play ang iyong trabaho sa ibabaw ng mga ito.
At literal ito ay pagpunta sa ilagay sa likod, ito ay pagpunta sa gawin ang lahat ng ang gumawa
na ako lang hinila mula sa kahit saan nakuha ko na ang mga ito,
mula sa mga remote repository, at pagkatapos ito ay
pagpunta sa play ang aking bagong nagkakasala sa tuktok nito.
Sa ibang salita, ito ay pagpunta upang ilapat ang lahat ng mga pagbabago.
Kaya kung ayusin ko lang this-- Interesting.
Siguro na ang isang pagkakaiba system.
>> Kaya OK.
Kaya ang pangunahing ideya na ngayon kung ako ay tumingin sa ang log,
Kukunin ko makita na ito ay idinagdag muli ang aking pangalan.
Kaya ito ay talagang hindi before-- Paumanhin, ginawa ko ito.
Maghintay.
Ako ay isang maliit na nalilito tungkol sa order dito.
Ngunit mahalagang, ang ideya ay na mayroong mga
ilang mga gumagawa na nasa remote repository na ay hindi pa ginawa dito.
Isang bagay na ako ay itinulak, ito Mukhang siguro ko sinasadyang
itinulak mula sa Anna branch.
>> Ngunit sa anumang kaso, kapag nakuha ko anumang mga gumagawa na were-- oo.
Tingnan, sa isang punto, ko sinasadyang itinulak mula sa Anna branch,
dahil ako ay magkasala idinagdag na file Anna.
Mapapansin mo na na nasa may bago ngayon.
Hindi, maghintay.
Iyan ay mula sa merge.
Minsan ito ay isang maliit na mahirap na dahilan tungkol sa,
dahil ako ay talagang hindi sigurado kung bakit ito ibinigay sa akin ng sumasalungat doon.
Ngunit ang mga pangunahing saligan na kung Ako ay may isang bungkos ng mga commits-- sorry.
>> Kung ang ibang tao ay ginawa ng isang grupo ng mga utos sa master at gusto nila ay
itinulak sa pamamagitan ng remote repository, at ako ay may ilang mga lokal na mga gumagawa na ako
Hindi pa itinulak, at gagawin ko git hilahin --- rebase, pagkatapos ay kapag ito kinukuha,
halip na sinusubukan mong sumanib, susubukan nitong rebase.
At ang tanging pagkakaiba ay na pagkatapos mo end up sa isang mas malinis na kasaysayan magkasala,
at sa kasong ito, ito ang tunay gumagawa ng isang pulutong ng higit pa sa isang pagkakaiba.
Dahil kung sa bawat oras na ikaw pull ikaw ay nagpapakilala ng isang merge magkasala,
pagkatapos ito ay nagsisimula upang makakuha ng talagang pangit, talagang mabilis.
At ito ay nagiging sobrang hindi maliwanag kung ano talaga ang ginagawa mo.
>> Kaya hindi ko gagawin naman iminumungkahi na iyong
simulan sinusubukang rebase lahat ng iyong sanga sa halip na pinagsasama ang mga ito,
o bago pinagsasama ang mga ito.
Ngunit Gusto ko iminumungkahi tiyak na ang bilang ikaw ay gumagawa ng ito,
mo marahil subukan upang makakuha ng isang pakiramdam para sa git hilahin sa pamamagitan ng opsyon rebase, --rebase,
dahil iyon ay pumunta sa isang mahabang paraan patungo sa paggawa ng iyong mangako mas malinaw na kasaysayan,
paggawa ng mas kitang-kita ano ang ginagawa mo.
SIGE.
Kahit sino ay may huling katanungan bago matapos up lang namin.
Oo?
>> Madla: [hindi marinig].
>> ANNA WHITNEY: Iyan ay hindi ang aking personal na kombensiyon,
ngunit ito ay uri ng isang convention, mas pangkalahatang.
At Hindi sa tingin ko ito ang aktwal na Latin.
Oo, kaya ang ilan sa mga ito ay tunay na Latin, ngunit ito ay isang uri ng like--
Madla: [hindi marinig].
>> ANNA WHITNEY: OK.
Hayaan akong makita kung ang maaari kong gawin ito ng tama.
At pagkatapos ay ang log git dapat talagang magpakita ng isang bagay na kapaki-pakinabang.
OK, ngayon.
>> Madla: Lahat ng mga karapatan, ito ganito ang hitsura ng Griyego sa akin.
>> ANNA WHITNEY: OK.
Kaya natin ngayon akong makita kung ang git log ay nagpapakita ng mas maraming kapaki-pakinabang na kahit ano.
Kaya oo.
Ito ay kapag merged-- ko yes.
Kaya ang pagbabago ay kapag ipinagsama ko ang bagong sangay, at nilikha ko ang mga bagong file.
At ang huling oras na ako ay itinulak, ako pa rin tumuloy ang aking pangalan sa loremipsum file.
Kaya sa sandaling naayos ko na, pagkatapos ay ang mga ay mailalapat pagkatapos, tulad ng kung sila ay
ay orihinal nai-tapos pagkatapos.
Ba na magkaroon ng kahulugan?
>> Kung na-set up ako ng aking mga sanga upang orihinal na subukan upang ilarawan
konsepto na ito, maaaring ito ay nagtrabaho.
Ngunit ako ay hindi sigurado kung kami ay ay kahit na pagpunta upang makakuha ng sa na ito.
Anumang mga huling katanungan?
>> Madla: [hindi marinig].
ANNA WHITNEY: Oo.
Hindi nito kailangang maging maaaring basahin ang mga bagay
upang i-save ito sa isang git repository.
Kaya ang mangyayari kong magkaroon ka dito ng isang PDF.
Kaya lahat ng sa iyo, kahit na hindi ka magsa-sign up para sa Git, maaari mong gamitin ang bigay-sipi.
Ito ay sa pahina repository.
Muli, maaari mong basahin ang repository kahit na kung ikaw ay hindi
isang nakikipagtulungan sa repository.
Subalit kaya, hindi ko na partikular na i-edit ang PDF format, tama?
Ngunit kung i-save ko ang isang bagong PDF sa doon, sa ilalim ng na pangalan, maaari ko bang gumawa ng mga pagbabago
at itulak ang mga ito sa lalagyan.
>> Ito ay madalas na standard practice sa walang live ang iyong mga binary file
sa iyong lalagyan maliban kung ang mga ito ay pagpunta sa be-- kung ito ay isang bagay na
tulad ng isang build ng iyong application, ikaw ay maaaring makakuha ng alisan ng ito
bago tanggapin ang alok, o ilagay ang ito sa labas ng repository.
Dahil lalo na, tulad ng Git hindi maaaring hawakan napakalaking mga file,
o partikular GitHub ay hindi hayaan mong mag-upload ng masyadong malaki
file dahil ito ay masyadong maraming load sa kanilang mga server.
Ito ay maaari ring gamitin Git nang hindi gumagamit ng GitHub, sa kaso
maaari mong gamitin ang kanilang mga, maaari kang maging magagawa upang panatilihing ng malalaking file sa doon
kung ikaw ay nagkaroon ng iyong sariling server.
Ngunit sa gayon ay higit pa sa isang isyu ng laki kaysa sa pagiging madaling mabasa.
Tanong?
>> Madla: [hindi marinig].
ANNA WHITNEY: Kanan.
So fast forward ko bang pagsamahin ang isa na kung saan ang lahat ng iyong ginagawa
ay lamang ng pagkuha ng ilang mga gumagawa mula sa isang bahagi ng merge
at inilagay ang mga ito sa iba.
Kaya't kung ikaw ay nasa master, ikaw ay Hindi nagbago ang master sa lahat.
Nagsagawa ka ng isang bungkos ng mga pagbabago sa iyong mga tampok branch,
at sumanib ka sa branch na katangian.
Dahil doon ay walang mga pagbabago sa master, ikaw ay
maaaring sa tingin ng mga ito bilang naghahanap talaga tulad ng larawan na ito sa ibaba.
Ang mga pulang arrow ay hindi progressed, kaya ang lahat ng iyong ginagawa ay mahalagang
ay pagpili na ito up.
At ngayon sinasabi, OK, ito ay lamang ang pulang arrow.
Sinusuportahan ba na may katuturan?
>> At ito ay mabuti dahil walang merge magkasala.
Alam mo may hindi pagpunta sa maging anumang mga kontrahan sa pamamagitan ng kahulugan.
Kung mayroong anumang salungatan, Gusto mo na nalutas ang mga ito
kung ikaw ay isang bagay na tulad nito.
>> Madla: [hindi marinig].
>> ANNA WHITNEY: So sa madaling salita, kung mayroon kang isang larawan na tulad nito
at ginawa mo ang isang fast forward merge upang magdala ng lahat ng ito bagay up dito,
ito ay uri ng husto upang ipakita ang mga ito sa paraan iginuhit ko ang mga diagram dahil ikaw
Gusto pa rin ng dalawang magkahiwalay na mga sanga, pero ang mga ito ay hindi pa diverged.
Maaari mong isipin na ito bilang isa lamang tulad ng, kung mayroon kang isang pulang arrow na
napupunta lahat ng mga paraan na dito, ngunit ito may isang pula at isang asul unahan ng pana,
at sa gayon ay maaari kang magdagdag ng higit nagkakasala sa alinman sa mga ito,
at pagkatapos ay ang mga ito ay magkaiba muli.
Ngunit ang mga ito sa parehong hanggang sa puntong iyon.
>> Anumang higit pang mga tanong?
Lahat tama.
Well, salamat sa inyo.