sử dụng git cho người mới bắt đầu (tiếng việt)
TRANSCRIPT
![Page 1: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/1.jpg)
HOWTOUSEGITHƯỚNGDẪN SỬ DỤNG GITCHO NGƯỜIMỚI BẮT ĐẦU
![Page 2: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/2.jpg)
Thanh BùiKhởi nghiệp, phát triển sản phẩm, growth hacking.
Skype: thanhbuivanFacebook: fb.com/mr.thanhbv
![Page 3: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/3.jpg)
NHUCẦUTHỰCTẾ
• Cần1hệthốnglưutrữtấtcảcácthayđổivềcodehàngngày.• Đểsaunàycóthểxemlại,hoặcphụchồivềmộtthờiđiểmtrongquákhứ.
• Haicáiđầuthìtốthơn1cáiđầu.• Bấtkỳaiđềucóthểthamgia,nhữngngkháctrongteambiếtchínhxáctừngngđãlàmgì,thayđổigì.
![Page 4: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/4.jpg)
LỊCHSỬ- 1.LOCALVERSIONCONTROL
• Cácphiênbảnchỉlưutrênmáyngườilàm
• Sửdụnglệnhrcsđểtạoracácphiênbản
• Rấtkhóđểphốihợptrongnhómnhiềungười
• Đãlỗithời&hiệntạikhôngcònaisửdụng
![Page 5: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/5.jpg)
LỊCHSỬ- 2.CENTRALVERSIONCONTROLSYSTEM
• Lịchsửcácversion,thayđổiđượclưutrữở1server.
• SVNlàhệthốngphổbiếnnhấttheophươngphápnày.
• Vấnđềphátsinh:• Khiserverbịhỏng,mấthếtdữliệu.• Khôngaicộngtácđượcvớinhữngngườicònlại,khônglưuđccácphiênbảnnếukokếtnốiđcđếnmáychủ
• Tốcđộchậm
![Page 6: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/6.jpg)
LỊCHSỬ- 3.DISTRIBUTEDVERSIONCONTROLSYSTEM
• Giảiquyếtđượchếtcácvấnđềmàcáchệthốngcũhơnmắcphải.
• Cáchệthốngphổbiếnsửdụngphươngphápnày:Git,hg…
![Page 7: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/7.jpg)
GIỚITHIỆUGIT
• Tốcđộcựcnhanh(Dữliệuđượcnénvàgiảinénởhaiđầutrckhitruyềnđi).
• Kiếntrúcrấtđơngiản,aicũngcóthểhọc&dùngđược.• Phântánhoàntoàn.• Đãđượckiểmnghiệm&sửdụngtronghầuhếtcáccôngty.• Cựcmạnhtrongviệcphânnhánh.
![Page 8: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/8.jpg)
CÁCHTHỨCGITHOẠTĐỘNG
![Page 9: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/9.jpg)
BẮTĐẦUSỬDỤNGGIT
Có2cách:• Tạo1repo(khochứa)mớitrênlocal• Saochép1repo(khochứa)từmộtmáykhác(máychủ,bitbucket,github…)
![Page 10: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/10.jpg)
3CÁCTRẠNGTHÁICỦA1FILETRONGGIT
• Committed:Committedcónghĩalàdữliệuđãđượclưutrữmộtcáchantoàntrongcơsởdữliệu
• Modified:Modifiedcónghĩalàbạnđãthayđổitậptinnhưngchưacommitvàocơsởdữliệu
• Staged:làbạnđãđánhdấusẽcommitphiênbảnhiệntạicủamộttậptinđãchỉnhsửatronglầncommitsắptới
=>ĐiềunàytạorabaphầnriêngbiệtcủamộtdựánsửdụngGit:thưmụcGit,thưmụclàmviệc,vàkhuvựctổchức(stagingarea).
![Page 11: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/11.jpg)
CÁCTHAOTÁCCƠBẢNTRONGGIT
• gitadd:Thêmmộtfile(modifiedhoặcuntracked)vàolầncommittiếptheo
• gitcommit:Lưucácthayđổivừatạora(bằnglệnhadd)vàokhochứa(repo)trênmáymình
• gitpull=fetch+merge• gitfetch:Kéodữliệutừkhochứatrênserverxuốngkhochứaởmáycủabạn• gitmerge:Mergedữliệu.Mặcđịnhlàmergedữliệutừlầncommitgầnnhấttrênmáy(HEAD)vớidữliệulầncommitmớinhấttrênserver
• gitpush:Đồngbộhóakhochứatrênmáy&khochứatrênserver(bitbucket)• gitlog:Xemlạilịchsửcủa1file/branch
![Page 12: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/12.jpg)
GITADD&GITCOMMIT
![Page 13: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/13.jpg)
GITFETCH
![Page 14: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/14.jpg)
PULL(FETCH+MERGE)
![Page 15: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/15.jpg)
TRƯỜNGHỢPMERGEMÀBỊCONFLICT
• Việcbịconflictkhimergelàbình thường.Khôngcógìphảilolắng.
• Cẩnthậncheckqualầnlượtcácfilebịconflict,mergethủcôngbằngtay.(Sửdụngcôngcụđểmerge).
• SaukhimergexongthìmarkasresolvedtrongSourceTree.
• Tiếptheolàcommitcácthayđổiđó.
![Page 16: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/16.jpg)
PHỤCHỒI
• gitcheckout:Lấyvềfiletừbấtkỳcommitnàotronglocalrepo(saukhingdùngsửathìphảitạobranchmới).
• gitreset.Có3kiểu.• hard:Bỏquahếtcácthayđổitrongmáy(xóahếtcáccommittrcđó).Thưmụclàmviệcsẽgiốngnhưthưmụclàmviệcởcommitvừareset.
• mixed:Chỉresetindex,giữlạicácthayđổihiệntại.Cóthểcommitlại.
• soft:Giữlạitấtcả.
![Page 17: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/17.jpg)
.GITIGNORE
• Trongthưmụclàmviệc,cónhữnggìmàkobiếtgittheodõi,kiểmsoát.Vídụ:cácfiletạm,filelog,tmp...
• =>Cóthểsửdụng.gitignoređểthôngbáochogitbiếtlàkođượctrackcácfilenày.
• .gitignorenằmởthưmụcgốccủadựán
![Page 18: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/18.jpg)
BRANCH– RẼNHÁNHTRONGGIT
• Nhánhgiúp1dựánđượctổchứctốthơn.
• Cónhiềucáchtổchứcnhánh.Nhưngphổbiếnnhấtlà:• 1nhánhdànhchocácphầncodeđãchạyổnđịnh(master,production)
• 1nhánhdànhchocácphầncodeđangpháttriển(beta,testing)• Cácnhánhtopic:dànhchotừngtask,issue,thậmchílàcácidea,hướngpháttriển.Saukhideveloperhoànthànhsẽmergevàonhánhtesting.Saukhitestxongthìmergetiếpvàonhánhproduction.
![Page 19: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/19.jpg)
VÍDỤVỀ1SƠĐỒRẼNHÁNHTRONGGIT
![Page 20: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/20.jpg)
VÍDỤVỀ1DỰÁNCỤTHỂ
- CommitC0làcommitkhởitạodựán.- ĐếncommitC1thìpháthệthốngcólỗi(issue91)- Tạobranchiss91đểxửlýlỗiđó.- TRongquátrìnhxửlýissue91,commitC4thìlại
pháthiệnra1cáchxửlýtốthơn=>tạobranchiss91v2đểpháttriểntheohướngmớitrongkhivẫnduytrìlàmtheocáchcũtrêniss91
- Trongquátrìnhpháttriểndựán,đếncommitC10thìnghĩra1sốidearấthay,nhưngbạnkhôngchắcnócóđccảteamđồngýhaykhông?
![Page 21: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/21.jpg)
VÍDỤVỀ1DỰÁNCỤTHỂ
- Bâygiờ,giảsửbạnchọncáchgiảiquyếtthứhai(branchiss91v2).Issuelúcnàyđãđượcfixxong.
- Bạntrìnhbàycácýtưởngchođồngnghiệpvàđượchọđồngý(branchdumbidea)
- Lúcnàybạncóthểmergebranchdumbidea&branchiss91v2vàobranchmaster&tiếptụccôngviệcchính.
![Page 22: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/22.jpg)
GITCLIENT:SOURCETREE,SMARTGIT,TOWER
![Page 23: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/23.jpg)
WORKFLOW
• Mỗingườicó1branchđểlàmviệcriêng.• Vớinhữngtasklớn,cầncommitnhiềulần,thờigianlàmviệckéodài=>tạoriêngbranchchonó.
• Committhườngxuyên(khôngnhấtthiếtphảipush).Cứxong1function,1phầntínhnăngnàođấythìlạicommit.
• Khixongmộttínhnăngthìmergelạivàobranchmasterđểnhữngngườikháccóthểfetchvề.
![Page 24: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/24.jpg)
MỘTVÀILƯUÝVỚIUNITY
• ChangeVersionControlMode toVisibleMetaFiles
• ChangeAssetSerializationMode to ForceText
• Chỉ1ngườilàmviệctrên1scenetại1thờiđiểm
• Sửdụngprefabsđểlưugameobjectthaychocácfilescene.
![Page 25: Sử dụng GIT cho người mới bắt đầu (Tiếng Việt)](https://reader030.vdocuments.site/reader030/viewer/2022020301/586f78131a28ab10258b6a19/html5/thumbnails/25.jpg)
UNITY3DGITIGNORE/[Ll]ibrary//[Tt]emp/
/[Oo]bj//[Bb]uild/#AutogeneratedVS/MDsolutionandprojectfiles
*.csproj*.unityproj
*.sln*.suo*.tmp
*.user*.userprefs
*.pidb*.booproj#Unity3Dgeneratedmetafiles
*.pidb.meta#Unity3DGeneratedFileOnCrashReports
sysinfo.txt