{"id":12334,"date":"2017-08-29T09:09:33","date_gmt":"2017-08-29T02:09:33","guid":{"rendered":"\/\/itviec.com\/blog\/?p=12334"},"modified":"2024-11-15T17:39:27","modified_gmt":"2024-11-15T10:39:27","slug":"git-la-gi","status":"publish","type":"post","link":"https:\/\/itviec.com\/blog\/git-la-gi\/","title":{"rendered":"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch tuy\u1ec7t v\u1eddi khi d\u00f9ng Git"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">N\u1ed9i dung b\u00e0i vi\u1ebft<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/itviec.com\/blog\/git-la-gi\/#Dinh_nghia_Git_la_gi\" >\u0110\u1ecbnh ngh\u0129a Git l\u00e0 g\u00ec?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/itviec.com\/blog\/git-la-gi\/#Su_giongkhac_nhau_giua_cac_he_thong_quan_ly_phien_ban_khac_va_Git_la_gi\" >S\u1ef1 gi\u1ed1ng\/kh\u00e1c nhau gi\u1eefa c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n kh\u00e1c v\u00e0 Git l\u00e0 g\u00ec?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/itviec.com\/blog\/git-la-gi\/#Nhung_tinh_nang_uu_viet_cua_Git_la_gi_so_voi_SVN\" >Nh\u1eefng t\u00ednh n\u0103ng \u01b0u vi\u1ec7t c\u1ee7a Git l\u00e0 g\u00ec so v\u1edbi SVN?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/itviec.com\/blog\/git-la-gi\/#Nhung_luu_y_khi_lam_viec_voi_Git_la_gi\" >Nh\u1eefng l\u01b0u \u00fd khi l\u00e0m vi\u1ec7c v\u1edbi Git l\u00e0 g\u00ec?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/itviec.com\/blog\/git-la-gi\/#Resource_huong_dan_su_dung_Git_hieu_qua\" >Resource h\u01b0\u1edbng d\u1eabn s\u1eed d\u1ee5ng Git hi\u1ec7u qu\u1ea3?<\/a><\/li><\/ul><\/nav><\/div>\n\r\n<p><em>Git l\u00e0 g\u00ec? Gi\u1ed1ng c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n kh\u00e1c, Git c\u0169ng h\u1ed7 tr\u1ee3 qu\u1ea3n l\u00fd code v\u00e0 l\u1ecbch s\u1eed thay \u0111\u1ed5i. Tuy nhi\u00ean, Git \u01b0u vi\u1ec7t h\u01a1n v\u00ec c\u00f3 kh\u1ea3 n\u0103ng t\u00e1ch nh\u00e1nh (branch), h\u1ed7 tr\u1ee3 r\u1ea5t t\u1ed1t cho teamwork, nh\u1eefng vi\u1ec7c nh\u01b0 ph\u00e2n chia task, t\u1ed5ng h\u1ee3p code tr\u1edf n\u00ean d\u1ec5 d\u00e0ng h\u01a1n nhi\u1ec1u.<\/em><\/p>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p><strong><em>Xem ngay <a href=\"https:\/\/itviec.com\/it-jobs\/developer?utm_medium=anchor_text_high&amp;utm_source=blog&amp;utm_campaign=viec_lam_developer&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noreferrer noopener\">vi\u1ec7c l\u00e0m Developer<\/a> ch\u1ea5t tr\u00ean ITviec<\/em><\/strong><\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<p>Nh\u1eb1m gi\u00fap b\u1ea1n c\u00f3 c\u00e1i nh\u00ecn t\u1ed5ng quan h\u01a1n v\u1ec1 Git l\u00e0 g\u00ec v\u00e0 c\u00e1ch s\u1eed d\u1ee5ng Git hi\u1ec7u qu\u1ea3 nh\u1ea5t, ITviec \u0111\u00e3 t\u00ecm \u0111\u1ebfn 3 chuy\u00ean gia \u0111\u1ec3 th\u1ef1c hi\u1ec7n b\u00e0i vi\u1ebft n\u00e0y:<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li>Anh Jonathan Khor &#8211; V\u1edbi 13 n\u0103m kinh nghi\u1ec7m l\u1eadp tr\u00ecnh, Jonathan t\u1eebng tr\u1ea3i qua nhi\u1ec1u v\u1ecb tr\u00ed bao g\u1ed3m c\u1ea3 Software Engineer v\u00e0 Analyst Programmer. Hi\u1ec7n anh l\u00e0 Development Team Leader t\u1ea1i MedHealth.<\/li>\r\n<li>Anh V\u0169 Th\u00e0nh Nh\u00e2n, hi\u1ec7n \u0111ang l\u00e0m t\u1ea1i b\u1ed9 ph\u1eadn R&amp;D c\u1ee7a Vietnix.<\/li>\r\n<li>Anh V\u01b0\u01a1ng \u0110\u1ee9c Hi\u1ec1n, hi\u1ec7n l\u00e0 Developer t\u1ea1i <a href=\"https:\/\/itviec.com\/?utm_medium=anchor_text_high&amp;utm_source=blog&amp;utm_campaign=itviec&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noreferrer noopener\">ITviec<\/a>.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p><!--more--><\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image wp-image-12385\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"201\" class=\"wp-image-12385\" src=\"\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/Git-la-gi-interviewees.jpg\" alt=\"git-la-gi\" srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/Git-la-gi-interviewees.jpg 600w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/Git-la-gi-interviewees-300x101.jpg 300w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/Git-la-gi-interviewees-200x67.jpg 200w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/>\r\n<figcaption>T\u1eeb tr\u00e1i qua: Jonathan Khor, V\u01b0\u01a1ng \u0110\u1ee9c Hi\u1ec1n, V\u0169 Th\u00e0nh Nh\u00e2n<\/figcaption>\r\n<\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"h-nh-ngh-a-git-l-g\"><span class=\"ez-toc-section\" id=\"Dinh_nghia_Git_la_gi\"><\/span><strong>\u0110\u1ecbnh ngh\u0129a<\/strong> <strong>Git l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n\r\n\r\n\r\n<p>Git l\u00e0 m\u1ed9t h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n ph\u00e2n t\u00e1n (distributed version control system). Nh\u1edd Git, vi\u1ec7c qu\u1ea3n l\u00fd code v\u00e0 l\u00e0m vi\u1ec7c nh\u00f3m c\u1ee7a developer tr\u1edf n\u00ean \u0111\u01a1n gi\u1ea3n, thu\u1eadn ti\u1ec7n h\u01a1n.<\/p>\r\n\r\n\r\n\r\n<p>\u0110\u1ec3 t\u00ecm hi\u1ec3u th\u00eam v\u1ec1 Git l\u00e0 g\u00ec th\u00ec b\u1ea1n c\u00f3 th\u1ec3 v\u00e0o trang ch\u1ee7 c\u1ee7a Git t\u1ea1i <a href=\"https:\/\/git-scm.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">\u0111\u00e2y<\/a>.<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"597\" height=\"272\" class=\"wp-image-12403\" title=\"git-la-gi\" src=\"\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-logo.jpg\" alt=\"git-la-gi\" srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-logo.jpg 597w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-logo-300x137.jpg 300w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-logo-200x91.jpg 200w\" sizes=\"auto, (max-width: 597px) 100vw, 597px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p><em><a href=\"https:\/\/itviec.com\/it-jobs\/developer\/ho-chi-minh-hcm?utm_medium=anchor_text_mid&amp;utm_source=blog&amp;utm_campaign=viec_lam_developer_tphcm&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noopener noreferrer\">Vi\u1ec7c l\u00e0m Developer TPHCM<\/a><\/em><\/p>\r\n<p><em><a href=\"https:\/\/itviec.com\/it-jobs\/developer\/ha-noi?utm_medium=anchor_text_mid&amp;utm_source=blog&amp;utm_campaign=viec_lam_developer_ha_noi&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noopener noreferrer\">Vi\u1ec7c l\u00e0m Developer H\u00e0 N\u1ed9i<\/a><\/em><\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<p>Khi \u0111\u01b0\u1ee3c h\u1ecfi t\u00ednh n\u0103ng y\u00eau th\u00edch nh\u1ea5t c\u1ee7a Git l\u00e0 g\u00ec, anh Hi\u1ec1n cho r\u1eb1ng \u0111\u1ed1i v\u1edbi anh, \u0111\u00f3 l\u00e0\u00a0<a href=\"https:\/\/git-scm.com\/book\/en\/v2\/Customizing-Git-Git-Hooks\" target=\"_blank\" rel=\"noreferrer noopener\">Git Hooks<\/a>\u00a0&#8211; Cho ph\u00e9p nh\u1eefng \u0111o\u1ea1n script \u1edf ph\u00eda client ho\u1eb7c server c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c k\u00edch ho\u1ea1t t\u1ef1 \u0111\u1ed9ng khi b\u1ea1n ch\u1ea1y m\u1ed9t l\u1ec7nh git.<\/p>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p>&#8220;<em>V\u00ed d\u1ee5, b\u1ea1n c\u00f3 th\u1ec3 cho server ch\u1ea1y t\u1ef1 \u0111\u1ed9ng m\u1ecdi unit tests tr\u01b0\u1edbc khi ch\u1ea5p nh\u1eadn merge v\u00e0o nh\u00e1nh master.<br \/>D\u0129 nhi\u00ean, n\u00f3 s\u1ebd kh\u00f4ng vi\u1ebft d\u00f9m unit tests \u201cngon l\u00e0nh c\u00e0nh \u0111\u00e0o\u201d cho b\u1ea1n, nh\u01b0ng t\u00f4i ngh\u0129 n\u00f3 s\u1ebd t\u1ea1o \u0111\u1ed9ng l\u1ef1c t\u1ed1t h\u01a1n. B\u1edfi v\u00ec test k\u0129 s\u1ebd gi\u00fap \u0111\u1ea3m b\u1ea3o r\u1eb1ng c\u00e1c t\u00ednh n\u0103ng b\u1ea1n \u0111ang x\u00e2y d\u1ef1ng kh\u00f4ng b\u1ecb ph\u00e1 h\u1ecfng b\u1edfi nh\u1eefng commit kh\u00e1c.<\/em>&#8220;<\/p>\r\n<p>&#8211; Anh V\u01b0\u01a1ng \u0110\u1ee9c Hi\u1ec1n<\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<div class=\"wp-block-image wp-image-12400\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"638\" height=\"479\" class=\"wp-image-12400\" src=\"\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/githooks.jpg\" alt=\"githooks-la-gi\" srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/githooks.jpg 638w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/githooks-300x225.jpg 300w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/githooks-200x150.jpg 200w\" sizes=\"auto, (max-width: 638px) 100vw, 638px\" \/>\r\n<figcaption>Githooks l\u00e0 m\u1ed9t t\u00ednh n\u0103ng th\u00fa v\u1ecb c\u1ee7a Git.<\/figcaption>\r\n<\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"h-s-gi-ng-kh-c-nhau-gi-a-c-c-h-th-ng-qu-n-l-phi-n-b-n-kh-c-v-git-l-g\"><span class=\"ez-toc-section\" id=\"Su_giongkhac_nhau_giua_cac_he_thong_quan_ly_phien_ban_khac_va_Git_la_gi\"><\/span><strong>S\u1ef1 gi\u1ed1ng\/kh\u00e1c nhau gi\u1eefa c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n kh\u00e1c v\u00e0 Git l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\" id=\"h-1-gi-ng\"><strong>1. Gi\u1ed1ng:<\/strong><\/h3>\r\n\r\n\r\n\r\n<p>V\u00ec Git c\u0169ng l\u00e0 m\u1ed9t h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n (vi\u1ebft t\u1eaft: VCS), n\u00ean Git h\u1ed7 tr\u1ee3:<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Qu\u1ea3n l\u00fd code v\u00e0 l\u1ecbch s\u1eed thay \u0111\u1ed5i:<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>V\u00ed d\u1ee5, b\u1ea1n ch\u1ec9nh s\u1eeda code v\u00e0 \u201ctr\u00f3t d\u1ea1i\u201d l\u00e0m ra m\u1ed9t \u0111\u1ed1ng bug? B\u1ea1n mu\u1ed1n quay tr\u1edf l\u1ea1i tr\u1ea1ng th\u00e1i tr\u01b0\u1edbc khi \u201cngh\u1ecbch ng\u1ee3m\u201d? N\u1ebfu kh\u00f4ng d\u00f9ng VCS, b\u1ea1n s\u1ebd ph\u1ea3i sao ch\u00e9p l\u1ea1i file tr\u01b0\u1edbc khi ch\u1ec9nh s\u1eeda, \u0111\u1ed3ng th\u1eddi ph\u1ea3i th\u01b0\u1eddng xuy\u00ean c\u1eadp nh\u1eadt t\u00ean th\u01b0 m\u1ee5c v\u00e0 t\u00ean file.<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>L\u00e0m vi\u1ec7c nh\u00f3m:<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>Khi c\u00e1c th\u00e0nh vi\u00ean trong nh\u00f3m mu\u1ed1n trao \u0111\u1ed5i code v\u1edbi nhau nh\u01b0ng n\u1ebfu kh\u00f4ng d\u00f9ng VCS, h\u1ecd s\u1ebd ph\u1ea3i:<\/p>\r\n\r\n\r\n\r\n<ol class=\"wp-block-list\">\r\n<li>Ch\u00e9p t\u1eebng module, \u0111o\u1ea1n code v\u00e0o usb r\u1ed3i \u0111\u01b0a cho nhau<\/li>\r\n<li>Ho\u1eb7c g\u1eedi c\u00e1c \u0111o\u1ea1n code nh\u1ecf qua \u1ee9ng d\u1ee5ng chat, mail\u2026<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<p>Nh\u1eefng c\u00e1ch tr\u00ean \u0111\u1ec1u r\u1ea5t th\u1ee7 c\u00f4ng, t\u1ed1n resources v\u00e0 ti\u1ec1m \u1ea9n nhi\u1ec1u r\u1ee7i ro. C\u00e1c VCS (bao g\u1ed3m Git) ra \u0111\u1eddi \u0111\u1ec3 kh\u1eafc ph\u1ee5c \u0111i\u1ec1u n\u00e0y.<\/p>\r\n\r\n\r\n\r\n<h3 class=\"wp-block-heading\" id=\"h-2-kh-c\"><strong>2. Kh\u00e1c:<\/strong><\/h3>\r\n\r\n\r\n\r\n<p>Git\u00a0<strong>ti\u1ebfp c\u1eadn theo h\u01b0\u1edbng ph\u00e2n t\u00e1n (distributed approach)<\/strong>\u00a0trong khi c\u00e1c VCS kh\u00e1c ti\u1ebfp c\u1eadn theo h\u01b0\u1edbng t\u1eadp trung (centralized).<\/p>\r\n\r\n\r\n\r\n<p>\u0110i\u1ec3m kh\u00e1c bi\u1ec7t l\u1edbn nh\u1ea5t c\u1ee7a Git l\u00e0 g\u00ec? \u0110\u00f3 l\u00e0\u00a0<strong>kh\u1ea3 n\u0103ng t\u00e1ch nh\u00e1nh (branch)<\/strong>. Nh\u1edd v\u00e0o kh\u1ea3 n\u0103ng n\u00e0y m\u00e0 Git \u0111\u00e3 mang \u0111\u1ebfn nh\u1eefng t\u00ednh n\u0103ng v\u01b0\u1ee3t tr\u1ed9i d\u01b0\u1edbi \u0111\u00e2y.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"h-nh-ng-t-nh-n-ng-u-vi-t-c-a-git-l-g-so-v-i-svn\"><span class=\"ez-toc-section\" id=\"Nhung_tinh_nang_uu_viet_cua_Git_la_gi_so_voi_SVN\"><\/span><strong>Nh\u1eefng t\u00ednh n\u0103ng \u01b0u vi\u1ec7t c\u1ee7a Git l\u00e0 g\u00ec so v\u1edbi SVN?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n\r\n\r\n\r\n<p>Nh\u1edd ti\u1ebfp c\u1eadn theo h\u01b0\u1edbng ph\u00e2n t\u00e1n, Git mang \u0111\u1ebfn nh\u1eefng l\u1ee3i \u00edch v\u00f4 c\u00f9ng to l\u1edbn nh\u01b0 h\u1ed7 tr\u1ee3 r\u1ea5t t\u1ed1t cho teamwork, ph\u00e2n chia task, t\u1ed5ng h\u1ee3p code tr\u1edf n\u00ean d\u1ec5 d\u00e0ng h\u01a1n nhi\u1ec1u, c\u1ee5 th\u1ec3:<\/p>\r\n\r\n\r\n\r\n<p><strong>1. S\u1eafp x\u1ebfp c\u00f4ng vi\u1ec7c t\u1ed1t h\u01a1n<\/strong><\/p>\r\n\r\n\r\n\r\n<p>Ngh\u0129a l\u00e0, b\u1ea1n c\u00f3 th\u1ec3 t\u1eadp trung gi\u1ea3i quy\u1ebft t\u1eebng task m\u00e0 kh\u00f4ng ph\u1ea3i b\u1eadn t\u00e2m lo l\u1eafng cho nh\u1eefng task li\u00ean quan.<\/p>\r\n\r\n\r\n\r\n<p>N\u1ebfu kh\u00f4ng d\u00f9ng Git, kh\u1ea3 n\u0103ng cao l\u00e0 m\u1ecdi ng\u01b0\u1eddi s\u1ebd l\u00e0m vi\u1ec7c gi\u1eabm ch\u00e2n nhau, nh\u1eefng task s\u1eafp ho\u00e0n th\u00e0nh s\u1ebd b\u1ecb tr\u00ec ho\u00e3n.\u00a0Ngo\u00e0i ra, t\u1ea5t c\u1ea3 m\u1ecdi task l\u1edbn nh\u1ecf s\u1ebd bu\u1ed9c ph\u1ea3i ho\u00e0n th\u00e0nh h\u1ebft tr\u01b0\u1edbc khi deploy, b\u1edfi v\u00ec ch\u1ec9 c\u1ea7n 1 task v\u1eabn \u0111ang dang d\u1edf, c\u1ea3 ph\u1ea7n m\u1ec1m c\u00f3 th\u1ec3 b\u1ecb s\u1eadp.<\/p>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p><em><em>Tham kh\u1ea3o th\u00eam:\u00a0<a href=\"https:\/\/lptech.asia\/kien-thuc\/git-la-gi-su-dung-git-nang-cao-chuan-git-flow\" target=\"_blank\" rel=\"noreferrer noopener\">L\u00e0m th\u1ebf n\u00e0o s\u1eed d\u1ee5ng Git \u0111\u1ec3 n\u00e2ng\u00a0cao chu\u1ea9n Git-flow<\/a><\/em><\/em><\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<p><strong>2. Linh ho\u1ea1t h\u01a1n khi ph\u1ea3i l\u00e0m c\u00f9ng l\u00fac nhi\u1ec1u task<\/strong><\/p>\r\n\r\n\r\n\r\n<p>B\u1edfi v\u00ec b\u1ea1n c\u00f3 th\u1ec3 c\u1ea5u tr\u00fac c\u00f4ng vi\u1ec7c d\u1ec5 d\u00e0ng h\u01a1n n\u00ean vi\u1ec7c l\u00e0m nhi\u1ec1u task c\u00f9ng l\u00fac v\u00f4 c\u00f9ng d\u1ec5 d\u00e0ng. V\u00ed d\u1ee5, c\u00f9ng m\u1ed9t l\u00fac, ch\u00fang ta th\u01b0\u1eddng c\u00f3 m\u1ed9t team l\u00e0m t\u00ednh n\u0103ng m\u1edbi, m\u1ed9t v\u00e0i team kh\u00e1c n\u00e2ng c\u1ea5p c\u00e1c t\u00ednh n\u0103ng hi\u1ec7n c\u00f3, v\u00e0 m\u1ed9t ng\u01b0\u1eddi fix bug.<\/p>\r\n\r\n\r\n\r\n<div class=\"wp-block-image wp-image-12387\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"539\" class=\"wp-image-12387\" src=\"\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/basic-remote-workflow-640x539.png\" alt=\"remote-workflow-cua-git\" srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/basic-remote-workflow-640x539.png 640w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/basic-remote-workflow-300x253.png 300w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/basic-remote-workflow-768x647.png 768w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/basic-remote-workflow-200x169.png 200w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/basic-remote-workflow.png 1018w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/>\r\n<figcaption>Git h\u1ed7 tr\u1ee3 r\u1ea5t t\u1ed1t cho l\u00e0m vi\u1ec7c nh\u00f3m<\/figcaption>\r\n<\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p><strong>3. T\u1ef1 tin h\u01a1n khi th\u1eed nghi\u1ec7m nh\u1eefng \u00fd t\u01b0\u1edfng m\u1edbi<\/strong><\/p>\r\n\r\n\r\n\r\n<p>B\u1ea1n c\u00f3 th\u1ec3 t\u00e1ch bi\u1ec7t vi\u1ec7c th\u1eed nghi\u1ec7m v\u1edbi d\u1ef1 \u00e1n ch\u00ednh, \u0111i\u1ec1u n\u00e0y gi\u00fap n\u00e2ng cao ch\u1ea5t l\u01b0\u1ee3ng code c\u0169ng nh\u01b0 t\u00ednh s\u00e1ng t\u1ea1o.<\/p>\r\n\r\n\r\n\r\n<p>Nh\u00ecn chung, hi\u1ec7n nay Git \u0111\u01b0\u1ee3c coi l\u00e0 ti\u00eau chu\u1ea9n b\u1ea5t th\u00e0nh v\u0103n trong ng\u00e0nh. N\u1ebfu ch\u01b0a bi\u1ebft v\u1ec1 Git, b\u1ea1n n\u00ean d\u00e0nh th\u1eddi gian \u0111\u1ec3 b\u1eaft \u0111\u1ea7u t\u00ecm hi\u1ec3u ngay. V\u00ec, s\u1edbm hay mu\u1ed9n, b\u1ea1n c\u0169ng s\u1ebd thu\u1ed9c v\u1ec1 m\u1ed9t team ph\u1ea3i d\u1ef1a d\u1eabm v\u00e0o n\u00f3.<\/p>\r\n\r\n\r\n\r\n<p><strong>4. Git cho ph\u00e9p ch\u00fang ta l\u00e0m vi\u1ec7c offline<\/strong><\/p>\r\n\r\n\r\n\r\n<p>Theo anh Th\u00e0nh Nh\u00e2n, \u1edf th\u1eddi \u0111i\u1ec3m hi\u1ec7n t\u1ea1i th\u00ec Git \u01b0u vi\u1ec7t h\u01a1n h\u1eb3n so v\u1edbi c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n t\u1eadp trung nh\u01b0 SVN.<\/p>\r\n\r\n\r\n\r\n<p>V\u00ed d\u1ee5,\u00a0<strong>Git cho ph\u00e9p ch\u00fang ta l\u00e0m vi\u1ec7c offline trong m\u1ed9t kho\u1ea3ng th\u1eddi gian<\/strong>.\u00a0B\u1ea1n ch\u1ec9 c\u1ea7n internet cho nhu c\u1ea7u h\u1ee3p t\u00e1c nh\u00f3m, ho\u1eb7c l\u01b0u l\u1ecbch s\u1eed commit code l\u00ean remote repos. Ng\u01b0\u1ee3c l\u1ea1i, v\u1edbi SVN, m\u1ed7i khi s\u1eed d\u1ee5ng \u0111\u1ec1u c\u1ea7n c\u00f3 k\u1ebft n\u1ed1i \u0111\u1ebfn m\u00e1y ch\u1ee7 SVN.<\/p>\r\n\r\n\r\n\r\n<p><strong>5. C\u00e1ch l\u01b0u tr\u1eef th\u00f4ng tin<\/strong><\/p>\r\n\r\n\r\n\r\n<p>Anh Jonathan chia s\u1ebb r\u1eb1ng n\u1ebfu so s\u00e1nh v\u1edbi <a href=\"https:\/\/www.collab.net\/products\/subversion\" target=\"_blank\" rel=\"noreferrer noopener\">SVN<\/a>\u00a0v\u00e0 <a href=\"https:\/\/www.visualstudio.com\/es\/tfs\/\" target=\"_blank\" rel=\"noreferrer noopener\">TFS<\/a>, r\u00f5 r\u00e0ng l\u00e0 Git h\u01a1n h\u1eb3n. S\u1ef1 kh\u00e1c bi\u1ec7t c\u1ed1t l\u00f5i trong c\u00e1ch qu\u1ea3n l\u00fd storage v\u00e0 c\u00e1c nh\u00e1nh c\u1ee7a Git khi\u1ebfn cho vi\u1ec7c merging c\u0169ng ho\u00e0n to\u00e0n kh\u00e1c.<\/p>\r\n\r\n\r\n\r\n<p>B\u00ean c\u1ea1nh \u0111\u00f3, c\u0169ng nh\u1edd c\u00e1ch Git l\u01b0u tr\u1eef th\u00f4ng tin m\u00e0 b\u1ea1n c\u00f3 th\u1ec3 th\u1ef1c hi\u1ec7n v\u00f4 v\u00e0n nh\u1eefng \u0111i\u1ec1u th\u00fa v\u1ecb \u0111\u1ec3 vi\u1ebft l\u1ea1i l\u1ecbch s\u1eed commit.<\/p>\r\n\r\n\r\n\r\n<p>B\u1ed5 dung th\u00eam v\u1ec1 t\u00ednh n\u0103ng n\u00e0y, anh Th\u00e0nh Nh\u00e2n \u0111\u01b0a ra m\u1ed9t v\u00ed d\u1ee5 kh\u00e1c.\u00a0<strong>Khi t\u00e1ch nh\u00e1nh, Git ch\u1ec9 s\u1eed d\u1ee5ng 41 bytes cho m\u1ed9t nh\u00e1nh m\u1edbi<\/strong>, gi\u00fap ti\u1ebft ki\u1ec7m kh\u00f4ng gian l\u01b0u tr\u1eef m\u00e0 v\u1eabn \u0111\u1ea3m b\u1ea3o t\u1ed1t nhu c\u1ea7u c\u00f4ng vi\u1ec7c. C\u00f2n SVN, theo t\u00f4i bi\u1ebft, s\u1ebd copy to\u00e0n b\u1ed9 source code th\u00e0nh m\u1ed9t b\u1ea3n m\u1edbi khi t\u00e1ch nh\u00e1nh.<\/p>\r\n\r\n\r\n\r\n<p><strong>6. Git mi\u1ec5n ph\u00ed<\/strong><\/p>\r\n\r\n\r\n\r\n<p>Anh \u0110\u1ee9c Hi\u1ec1n cho r\u1eb1ng, nguy\u00ean do m\u00e0 Git \u0111\u01b0\u1ee3c y\u00eau th\u00edch \u0111\u1ebfn nh\u01b0 v\u1eady ph\u1ea7n l\u1edbn l\u00e0 v\u00ec Git mi\u1ec5n ph\u00ed. Ngh\u0129a l\u00e0, m\u1ecdi ng\u01b0\u1eddi \u0111\u1ec1u c\u00f3 th\u1ec3 b\u1eaft \u0111\u1ea7u s\u1eed d\u1ee5ng nh\u1eefng ch\u1ee9c n\u0103ng c\u01a1 b\u1ea3n c\u1ee7a Git m\u00e0 kh\u00f4ng c\u1ea7n b\u1ea5t k\u00ec c\u01a1 s\u1edf h\u1ea1 t\u1ea7ng server n\u00e0o. Ngay c\u1ea3 Microsoft c\u0169ng \u0111\u00e3 b\u1eaft \u0111\u1ea7u d\u00f9ng Git \u0111\u1ec3 host Windows source code.<\/p>\r\n\r\n\r\n\r\n<p>\u0110\u1eb7c bi\u1ec7t, Git \u0111\u01b0\u1ee3c \u201csinh sau \u0111\u1ebb mu\u1ed9n\u201d h\u01a1n nhi\u1ec1u, cho n\u00ean t\u1ed1c \u0111\u1ed9 ph\u00e1t tri\u1ec3n nhanh ch\u00f3ng c\u1ee7a n\u00f3 l\u1ea1i c\u00e0ng \u0111\u00e1ng kinh ng\u1ea1c.<\/p>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"h-nh-ng-l-u-khi-l-m-vi-c-v-i-git-l-g\"><span class=\"ez-toc-section\" id=\"Nhung_luu_y_khi_lam_viec_voi_Git_la_gi\"><\/span><strong>Nh\u1eefng l\u01b0u \u00fd khi l\u00e0m vi\u1ec7c v\u1edbi Git l\u00e0 g\u00ec?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Ph\u1ea3i t\u00ecm hi\u1ec3u c\u00e1c nguy\u00ean t\u1eafc c\u1ed1t l\u00f5i c\u1ee7a Git<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p><em>\u201cKh\u00f4ng c\u00f3 g\u00ec t\u1ec7 h\u01a1n c\u1ea3nh \u0111ang v\u1eaft gi\u00f2 l\u00ean c\u1ed5 ch\u1ea1y deadline, m\u00e0 v\u1eabn c\u00f2n ph\u1ea3i qu\u1eb1n qu\u1ea1i h\u1ecdc c\u00e1ch d\u00f9ng Git. T\u1ed1t h\u01a1n h\u1ebft, b\u1ea1n n\u00ean d\u00e0nh th\u1eddi gian \u0111\u1ec3 t\u00ecm hi\u1ec3u Git tr\u01b0\u1edbc, r\u1ed3i th\u1eed d\u00f9ng v\u1edbi m\u1ed9t v\u00e0i d\u1ef1 \u00e1n th\u1eed nghi\u1ec7m, \u0111\u1ec3 tr\u00e1nh l\u00e0m \u1ea3nh h\u01b0\u1edfng \u0111\u1ebfn c\u00f4ng vi\u1ec7c ch\u00ednh. H\u00e3y t\u00ecm hi\u1ec3u Git l\u00e0 g\u00ec v\u00e0 gi\u00e1 tr\u1ecb c\u1ee7a Git tr\u01b0\u1edbc!\u201d<\/em><\/p>\r\n<p>&#8211; Anh Jonathan Khor<\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<p>Anh Jonathan g\u1ee3i \u00fd b\u1ea1n n\u00ean \u0111\u1ecdc cu\u1ed1n\u00a0<a href=\"https:\/\/git-scm.com\/book\/en\/v2\" target=\"_blank\" rel=\"noreferrer noopener\">Pro Git<\/a>. B\u1ea1n kh\u00f4ng c\u1ea7n \u0111\u1ecdc cu\u1ed1n s\u00e1ch n\u00e0y \u0111\u1ec3 bi\u1ebft c\u00e1ch d\u00f9ng Git, nh\u01b0ng n\u1ebfu mu\u1ed1n s\u1eed d\u1ee5ng Git hi\u1ec7u qu\u1ea3, b\u1ea1n n\u00ean \u0111\u1ecdc k\u0129.<\/p>\r\n\r\n\r\n\r\n<p>\u0110\u1ec3 t\u00f3m t\u1eaft l\u1ea1i, n\u1ebfu l\u00e0 newbie, c\u00f3 3 \u0111i\u1ec1u c\u01a1 b\u1ea3n b\u1ea1n c\u1ea7n t\u00ecm hi\u1ec3u\/ghi nh\u1edb v\u1ec1 Git l\u00e0 g\u00ec?<\/p>\r\n\r\n\r\n\r\n<ol class=\"wp-block-list\">\r\n<li>Git l\u00e0 m\u1ed9t \u0111\u1ed3 th\u1ecb c\u00f3 h\u01b0\u1edbng v\u00e0 kh\u00f4ng c\u00f3 v\u00f2ng l\u1eb7p<\/li>\r\n<li>Commit c\u00f3 t\u00ednh b\u1ea5t bi\u1ebfn<\/li>\r\n<li>C\u00e1c nh\u00e1nh ch\u1ec9 l\u00e0 con tr\u1ecf. M\u1ecdi \u0111i\u1ec1u c\u00f2n l\u1ea1i \u0111\u1ec1u b\u1eaft ngu\u1ed3n t\u1eeb \u0111\u00e2y<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Kh\u00f4ng n\u00ean \u00e1p d\u1ee5ng c\u00e1ch d\u00f9ng CVS v\u00e0 SVN v\u00e0o Git<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p><strong>Jonathan:\u00a0<\/strong>V\u00ed d\u1ee5 nh\u01b0 c\u00e1c nh\u00e1nh. V\u1edbi Git, nh\u00e1nh ch\u1ec9 l\u00e0 c\u00e1c con tr\u1ecf \u0111\u1ebfn c\u00e1c commit, c\u00f2n v\u1edbi SVN th\u00ec ch\u00fang l\u00e0 b\u1ea3n copy c\u1ee7a to\u00e0n b\u1ed9 th\u01b0 m\u1ee5c.\u00a0Gi\u1ea3i ph\u00e1p: h\u00e3y t\u00ecm hi\u1ec3u Git k\u0129 h\u01a1n! Quay tr\u1edf l\u1ea1i v\u1edbi l\u01b0u \u00fd tr\u00ean.<\/p>\r\n\r\n\r\n\r\n<p><strong>Th\u00e0nh Nh\u00e2n:<\/strong>\u00a0Kh\u00f4ng ph\u00e2n bi\u1ec7t \u0111\u01b0\u1ee3c local repo, remote repo, v\u1eabn \u00e1p d\u1ee5ng t\u01b0 t\u01b0\u1edfng c\u1ee7a SVN khi d\u00f9ng Git.<\/p>\r\n\r\n\r\n\r\n<p><strong>\u0110\u1ee9c Hi\u1ec1n:<\/strong>\u00a0C\u00f2n t\u00f4i c\u1ea3m th\u1ea5y m\u1ed9t v\u00e0i IDEs, v\u00ed d\u1ee5 nh\u01b0 Eclipse, \u0111\u01b0\u1ee3c thi\u1ebft k\u1ebf \u0111\u1ec3 ho\u1ea1t \u0111\u1ed9ng v\u1edbi h\u1ec7 th\u1ed1ng\u00a0<a href=\"https:\/\/vi.wikipedia.org\/wiki\/CVS\" target=\"_blank\" rel=\"noreferrer noopener\">CVS<\/a>\u00a0c\u0169 k\u0129, nh\u01b0ng l\u1ea1i g\u1eafn c\u00e1ch d\u00f9ng c\u1ee7a Git l\u00ean. V\u00ec v\u1eady, vi\u1ec7c t\u00edch h\u1ee3p kh\u00f4ng \u0111\u01b0\u1ee3c th\u1ef1c s\u1ef1 thu\u1eadn ti\u1ec7n nh\u01b0 nh\u1eefng t\u00ednh n\u0103ng kh\u00e1c c\u1ee7a Git. <em>(CVS \u2013 Concurrrent Versions System, h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd c\u00e1c phi\u00ean b\u1ea3n ph\u1ea7n m\u1ec1m m\u00e3 ngu\u1ed3n m\u1edf t\u1eeb nh\u1eefng n\u0103m 1980).<\/em><\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Nh\u1eefng l\u01b0u \u00fd khi commit<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>V\u1edbi anh Th\u00e0nh Nh\u00e2n, anh cho r\u1eb1ng \u0111\u1eebng n\u00ean commit v\u00f4 t\u1ed9i v\u1ea1 khi ch\u01b0a bi\u1ebft c\u00e1c bi\u1ec7n ph\u00e1p d\u1ecdn l\u1ea1i commit tree, g\u00e2y r\u1ed1i commit log. C\u00e1ch ph\u00f2ng ng\u1eeba t\u1ed1t nh\u1ea5t l\u00e0 xem k\u1ef9 t\u00e0i li\u1ec7u v\u1ec1 ph\u1ea7n n\u00e0y, \u0111\u1ed3ng th\u1eddi test th\u1eed tr\u00ean c\u00e1c d\u1ef1 \u00e1n demo. Ri\u00eang ph\u1ea7n commit log, trong team n\u00ean c\u00f3 th\u1ed1ng nh\u1ea5t tr\u01b0\u1edbc, ho\u1eb7c n\u00ean nh\u1edd ng\u01b0\u1eddi c\u00f3 kinh nghi\u1ec7m h\u01b0\u1edbng d\u1eabn.<\/p>\r\n\r\n\r\n\r\n<p>C\u00f3 nh\u1eefng ng\u01b0\u1eddi commit \u201cv\u00f4 t\u1ed9i v\u1ea1\u201c, nh\u01b0ng c\u0169ng c\u00f3 ng\u01b0\u1eddi qu\u00ean ph\u1ea3i commit. V\u00e0 \u0111\u00f3 ch\u00ednh l\u00e0 anh Jonathan.<\/p>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p><em>Khi reset m\u1ed9t nh\u00e1nh, t\u00f4i qu\u00ean commit c\u00e1c thay \u0111\u1ed5i. V\u1eady l\u00e0 \u0111\u1ed5 xu\u1ed1ng s\u00f4ng xu\u1ed1ng bi\u1ec3n m\u1ecdi th\u1ee9 \u0111\u00e3 l\u00e0m.<\/em><\/p>\r\n<p><em>T\u1eeb \u0111\u00f3 tr\u1edf \u0111i, tr\u01b0\u1edbc khi reset m\u1ed9t nh\u00e1nh, t\u00f4i lu\u00f4n vi\u1ebft th\u00eam m\u1ed9t l\u1ec7nh \u0111\u1ec3 commit c\u00e1c thay \u0111\u1ed5i tr\u01b0\u1edbc, r\u1ed3i m\u1edbi reset. B\u1eb1ng c\u00e1ch n\u00e0y, n\u1ebfu mu\u1ed1n xem l\u1ea1i nh\u1eefng thay \u0111\u1ed5i tr\u01b0\u1edbc \u0111\u00f3, t\u00f4i c\u00f3 th\u1ec3 d\u00f9ng\u00a0<a href=\"https:\/\/git-scm.com\/docs\/git-reflog\" target=\"_blank\" rel=\"noreferrer noopener\">reflog<\/a>.<\/em><\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Nh\u1eefng l\u01b0u \u00fd khi check-in<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>\u0110\u00e2y l\u00e0 nh\u1eefng l\u01b0u \u00fd c\u1ee7a anh \u0110\u1ee9c Hi\u1ec1n t\u1eeb ch\u00ednh kinh nghi\u1ec7m, sai l\u1ea7m c\u1ee7a b\u1ea3n th\u00e2n anh:<\/p>\r\n\r\n\r\n\r\n<ol class=\"wp-block-list\">\r\n<li><em>Check in nh\u1eefng files kh\u00f4ng th\u1ef1c s\u1ef1 li\u00ean quan v\u00e0o m\u1ed9t VCS:<\/em> Vi\u1ec7c n\u00e0y \u0111\u1eb7c bi\u1ec7t hay x\u1ea3y ra v\u1edbi c\u00e1c d\u1ef1 \u00e1n Python, khi m\u1ecdi ng\u01b0\u1eddi check in c\u00e1c .pyc files c\u1ee7a h\u1ecd. B\u1ea1n c\u00f3 th\u1ec3 thi\u1ebft l\u1eadp .gitignore \u0111\u1ec3 l\u1edd ch\u00fang \u0111i. V\u00e0 c\u0169ng n\u00ean d\u00f9ng githooks \u0111\u1ec3 d\u1ecdn d\u1eb9p ch\u00fang l\u00fac \u0111\u1ed5i nh\u00e1nh.<\/li>\r\n<li><em>Check in nh\u1eefng th\u1ee9 ho\u00e0n to\u00e0n kh\u00f4ng n\u00ean<\/em>: V\u00ed d\u1ee5, m\u1ecdi ng\u01b0\u1eddi r\u1ea5t hay hardcode m\u1ea5y th\u1ee9 nh\u01b0 mysql passwords. V\u1ec1 kh\u00eda c\u1ea1nh b\u1ea3o m\u1eadt, l\u1ed7i n\u00e0y \u0111\u00fang l\u00e0 kinh d\u1ecb. M\u1eb7t kh\u00e1c, n\u00f3 c\u0169ng c\u00f3 ngh\u0129a l\u00e0 b\u1ea1n kh\u00f4ng th\u1ec3 ch\u1ea1y c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh t\u00edch h\u1ee3p li\u00ean t\u1ee5c (Continuous Intergration \u2013 CI) v\u00ec t\u00e0i kho\u1ea3n trong m\u00f4i tr\u01b0\u1eddng production (mong l\u00e0) kh\u00e1c v\u1edbi m\u00f4i tr\u01b0\u1eddng test.<\/li>\r\n<li><em>Qu\u00ean kh\u00f4ng check-in code m\u1edbi<\/em>: H\u1eadu qu\u1ea3 l\u00e0 m\u1ea5y ng\u00e0y l\u00e0m vi\u1ec7c th\u00e0nh c\u00f4ng c\u1ed1c, ch\u1ec9 v\u00ec kh\u00f4ng \u0111\u1ec3 \u00fd \u0111\u1ebfn c\u1ea3nh b\u00e1o c\u1ee7a Git. V\u00e0 trong tr\u01b0\u1eddng h\u1ee3p n\u00e0y, \u0111i\u1ec1u duy nh\u1ea5t c\u00f3 th\u1ec3 l\u00e0m l\u00e0 r\u00fat kinh nghi\u1ec7m \u0111\u1ec3 kh\u00f4ng l\u1eb7p l\u1ea1i sai l\u1ea7m t\u01b0\u01a1ng t\u1ef1 m\u00e0 th\u00f4i.<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>Ph\u00e2n nh\u00e1nh th\u01b0\u1eddng xuy\u00ean<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>D\u00f9 ch\u1ec9 l\u00e0m vi\u1ec7c m\u1ed9t m\u00ecnh, b\u1ea1n v\u1eabn n\u00ean \u201cbranch early, branch often\u201d, \u0111\u1eebng n\u00ean l\u00e0m m\u1ecdi th\u1ee9 tr\u00ean nh\u00e1nh master \u0111\u1ec3:<\/p>\r\n\r\n\r\n\r\n<ol class=\"wp-block-list\">\r\n<li>Tr\u00e1nh h\u00ecnh th\u00e0nh th\u00f3i quen x\u1ea5u<\/li>\r\n<li>T\u1eadn d\u1ee5ng \u0111\u01b0\u1ee3c t\u00ednh n\u0103ng x\u1ecbn nh\u1ea5t c\u1ee7a m\u1ed9t VCS<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<p>H\u00e3y ch\u1eafc ch\u1eafn l\u00e0 b\u1ea1n c\u00f3 m\u1ed9t nh\u00e1nh staging v\u1edbi c\u00e1c t\u00ednh n\u0103ng \u0111\u00e3 \u0111\u01b0\u1ee3c unit test \u0111\u1ea7y \u0111\u1ee7 tr\u01b0\u1edbc khi nh\u1eadp v\u00e0o nh\u00e1nh master.<\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><strong>UI c\u1ee7a Git c\u1ea7n \u0111\u01b0\u1ee3c c\u1ea3i thi\u1ec7n<\/strong><\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<p>C\u00e1 nh\u00e2n anh Jonathan th\u1ea5y r\u1eb1ng, UI c\u1ee7a Git ch\u01b0a th\u1eadt s\u1ef1 t\u1ed1t v\u00e0 kh\u00f4ng cung c\u1ea5p \u0111\u1ee7 nh\u1eefng t\u00ednh n\u0103ng n\u00e2ng cao m\u00e0 m\u1ed9t ng\u01b0\u1eddi developer c\u00f3 th\u1ec3 c\u1ea7n.<\/p>\r\n\r\n\r\n\r\n<ol class=\"wp-block-list\">\r\n<li>\u001d<em>Giao di\u1ec7n \u0111\u1ec3 rebase m\u1ed9t nh\u00e1nh r\u1ea5t s\u01a1 s\u00e0i:<\/em> C\u00f3 v\u1ebb nh\u01b0 ch\u00fang ch\u1ec9 h\u1ee3p v\u1edbi nhu c\u1ea7u s\u1eed d\u1ee5ng c\u01a1 b\u1ea3n. B\u00ean c\u1ea1nh \u0111\u00f3, khi x\u1ea3y ra l\u1ed7i th\u00ec kh\u00f4ng ph\u1ea3i l\u00fac n\u00e0o ch\u00fang c\u0169ng \u0111\u01b0\u1ee3c x\u1eed l\u00fd t\u1ed1t.<\/li>\r\n<li><em>Vi\u1ec7c hi\u1ec3n th\u1ecb nh\u1eefng thay \u0111\u1ed5i tr\u00ean files hay change sets:<\/em> H\u1ea7u h\u1ebft UI hi\u1ec3n th\u1ecb ch\u00fang theo h\u00e0ng ngang, v\u1edbi phi\u00ean b\u1ea3n c\u0169 \u1edf tr\u00ean v\u00e0 phi\u00ean b\u1ea3n m\u1edbi \u1edf d\u01b0\u1edbi. L\u1ebd ra h\u1ecd n\u00ean \u0111\u1ed5i th\u00e0nh hi\u1ec3n th\u1ecb theo h\u00e0ng d\u1ecdc th\u00ec s\u1ebd d\u1ec5 theo d\u00f5i h\u01a1n. Ch\u01b0a h\u1ebft, m\u1ed9t s\u1ed1 UI cho ph\u00e9p s\u1eed d\u1ee5ng ch\u01b0\u01a1ng tr\u00ecnh b\u00ean ngo\u00e0i nh\u01b0 Beyond Compare \u0111\u1ec3 xem s\u1ef1 thay \u0111\u1ed5i, nh\u01b0ng m\u1ed9t s\u1ed1 UI kh\u00e1c th\u00ec kh\u00f4ng.<\/li>\r\n<li>\u001d<em>M\u1edf file \u0111ang xem trong IDE c\u0169ng ch\u01b0a th\u1ef1c s\u1ef1 t\u1ed1t:<\/em> Kh\u00f4ng ph\u1ea3i UI n\u00e0o c\u0169ng cho ph\u00e9p thao t\u00e1c n\u00e0y ch\u1ec9 v\u1edbi ph\u00edm t\u1eaft hay double click. Trong khi, m\u1ed9t ng\u01b0\u1eddi developer ph\u1ea3i review code h\u00e0ng ng\u00e0y, v\u00e0 t\u00ednh n\u0103ng n\u00e0y c\u1ef1c k\u00ec quan tr\u1ecdng v\u00ec s\u1ebd gi\u00fap h\u1ecd chuy\u1ec3n \u0111\u1ebfn ngay file \u0111ang xem.<\/li>\r\n<\/ol>\r\n\r\n\r\n\r\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\r\n<p><em><a href=\"https:\/\/itviec.com\/it-jobs\/senior-developer\/ho-chi-minh-hcm?utm_medium=anchor_text_mid&amp;utm_source=blog&amp;utm_campaign=viec_lam_senior_developer_tphcm&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noopener noreferrer\">Vi\u1ec7c l\u00e0m Senior Developer TPHCM<\/a><\/em><\/p>\r\n<p><em><a href=\"https:\/\/itviec.com\/it-jobs\/senior-developer\/ha-noi?utm_medium=anchor_text_mid&amp;utm_source=blog&amp;utm_campaign=viec_lam_senior_developer_ha_noi&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noopener noreferrer\">Vi\u1ec7c l\u00e0m Senior Developer H\u00e0 N\u1ed9i<\/a><\/em><\/p>\r\n<\/blockquote>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading\" id=\"h-resource-h-ng-d-n-s-d-ng-git-hi-u-qu\"><span class=\"ez-toc-section\" id=\"Resource_huong_dan_su_dung_Git_hieu_qua\"><\/span><strong>Resource h\u01b0\u1edbng d\u1eabn s\u1eed d\u1ee5ng Git hi\u1ec7u qu\u1ea3?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><a href=\"https:\/\/git-scm.com\/book\/vi\/v1\" target=\"_blank\" rel=\"noopener noreferrer\">Pro Git<\/a>\u00a0bao qu\u00e1t m\u1ecdi v\u1ea5n \u0111\u1ec1 v\u1ec1 Git, g\u1ed3m c\u1ea3 \u00a0l\u00fd thuy\u1ebft v\u00e0 v\u00ed d\u1ee5. \u0110i\u1ec1u tuy\u1ec7t v\u1eddi nh\u1ea5t l\u00e0 s\u00e1ch \u0111\u01b0\u1ee3c d\u1ecbch ra nhi\u1ec1u ng\u00f4n ng\u1eef, trong \u0111\u00f3 c\u00f3 c\u1ea3 ti\u1ebfng Vi\u1ec7t.<\/li>\r\n<li><a href=\"https:\/\/www.atlassian.com\/git\" target=\"_blank\" rel=\"noopener noreferrer\">Atlassian&#8217;s Git resources<\/a> c\u00f3 m\u1ed9t s\u1ed1 resource r\u1ea5t h\u1eefu \u00edch, k\u00e8m theo h\u00ecnh minh h\u1ecda b\u1eaft m\u1eaft, gi\u00fap ng\u01b0\u1eddi d\u00f9ng n\u1eafm b\u1eaft c\u00e1c kh\u00e1i ni\u1ec7m d\u1ec5 d\u00e0ng h\u01a1n.<\/li>\r\n<li><a href=\"https:\/\/try.github.io\/levels\/1\/challenges\/1\" target=\"_blank\" rel=\"noopener noreferrer\">GitHub&#8217;s Git tutorial<\/a> h\u01b0\u1edbng d\u1eabn th\u1ef1c h\u00e0nh t\u1eebng b\u01b0\u1edbc, gi\u00fap t\u00ecm hi\u1ec3u Git m\u1ed9t c\u00e1ch tr\u1ef1c quan.<\/li>\r\n<li><a href=\"http:\/\/www.cheat-sheets.org\/saved-copy\/git-cheat-sheet.pdf\" target=\"_blank\" rel=\"noopener noreferrer\">Git cheat sheet<\/a> t\u00f3m l\u01b0\u1ee3c nh\u1eefng n\u1ed9i dung quan tr\u1ecdng nh\u1ea5t. B\u1ea1n c\u00f3 th\u1ec3 in ra \u0111\u1ec3 d\u00f9ng.<\/li>\r\n<\/ul>\r\n<p>V\u1edbi b\u00e0i chia s\u1ebb tr\u00ean, ITviec mong b\u1ea1n \u0111\u00e3 hi\u1ec3u th\u00eam Git l\u00e0 g\u00ec, nh\u1eefng l\u1ee3i \u00edch tuy\u1ec7t v\u1eddi m\u00e0 Git mang l\u1ea1i cho Developer c\u0169ng nh\u01b0 c\u00e1ch s\u1eed d\u1ee5ng Git hi\u1ec7u qu\u1ea3.<\/p>\r\n\r\n\r\n\r\n<p><strong>Xem th\u00eam m\u1ed9t s\u1ed1 b\u00e0i vi\u1ebft li\u00ean quan:<\/strong><\/p>\r\n\r\n\r\n\r\n<ul class=\"wp-block-list\">\r\n<li><a href=\"https:\/\/itviec.com\/blog\/github-la-gi\/\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub l\u00e0 g\u00ec? 3 l\u1ee3i \u00edch c\u1ee7a GitHub?<\/a><\/li>\r\n<li><a href=\"https:\/\/itviec.com\/blog\/bitbucket-la-gi\/\" target=\"_blank\" rel=\"noopener noreferrer\">Bitbucket l\u00e0 g\u00ec? 5 t\u00ednh n\u0103ng tuy\u1ec7t v\u1eddi c\u1ee7a Bitbucket &#8220;b\u1ecf xa&#8221; GitHub?<\/a><\/li>\r\n<li><a href=\"https:\/\/itviec.com\/blog\/source-code-repository\/\" target=\"_blank\" rel=\"noopener noreferrer\">6 source code repository website d\u00e0nh cho Developer<\/a>.<\/li>\r\n<\/ul>\r\n\r\n\r\n\r\n<div class=\"wp-block-image\">\r\n<figure class=\"aligncenter\"><img loading=\"lazy\" decoding=\"async\" width=\"200\" height=\"200\" class=\"wp-image-5668\" src=\"\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-200x200.png\" alt=\"Robby2\" srcset=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-200x200.png 200w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2-60x60.png 60w, https:\/\/itviec.com\/blog\/wp-content\/uploads\/2015\/07\/Robby2.png 300w\" sizes=\"auto, (max-width: 200px) 100vw, 200px\" \/><\/figure>\r\n<\/div>\r\n\r\n\r\n\r\n<p class=\"has-text-align-left\"><strong>N\u1ebfu b\u1ea1n ngh\u0129 nh\u1eefng chia s\u1ebb n\u00e0y c\u00f3 th\u1ec3 gi\u00fap \u00edch cho b\u1ea1n b\u00e8 ho\u1eb7c \u0111\u1ed3ng nghi\u1ec7p th\u00ec \u0111\u1eebng ng\u1ea1i nh\u1ea5n n\u00fat Share b\u00ean d\u01b0\u1edbi nh\u00e9!<\/strong><\/p>\r\n\r\n\r\n\r\n<p class=\"has-text-align-center\"><strong>V\u00e0 tham kh\u1ea3o ngay <a href=\"https:\/\/itviec.com\/it-jobs\/developer?utm_medium=anchor_text_low&amp;utm_source=blog&amp;utm_campaign=viec_lam_developer&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noopener noreferrer\">vi\u1ec7c l\u00e0m Developer<\/a> ch\u1ea5t tr\u00ean <a href=\"https:\/\/itviec.com\/?utm_medium=anchor_text_low&amp;utm_source=blog&amp;utm_campaign=itviec&amp;utm_content=git_la_gi\" target=\"_blank\" rel=\"noopener\">ITviec<\/a>!<\/strong><\/p>\r\n","protected":false},"excerpt":{"rendered":"<p>Git l\u00e0 g\u00ec? Gi\u1ed1ng c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n kh\u00e1c, Git c\u0169ng h\u1ed7 tr\u1ee3 qu\u1ea3n l\u00fd code v\u00e0 l\u1ecbch s\u1eed thay \u0111\u1ed5i. Tuy nhi\u00ean, Git \u01b0u vi\u1ec7t h\u01a1n v\u00ec c\u00f3 kh\u1ea3 n\u0103ng t\u00e1ch nh\u00e1nh (branch), h\u1ed7 tr\u1ee3 r\u1ea5t t\u1ed1t cho teamwork, nh\u1eefng vi\u1ec7c nh\u01b0 ph\u00e2n chia task, t\u1ed5ng h\u1ee3p code tr\u1edf n\u00ean d\u1ec5 [&hellip;]<\/p>\n","protected":false},"author":58,"featured_media":12342,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_gspb_post_css":"","footnotes":""},"categories":[109,111],"tags":[],"class_list":["post-12334","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-chuyen-mon-it","category-tai-lieu-it-online"],"blocksy_meta":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.8 (Yoast SEO v27.9) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch TUY\u1ec6T V\u1edcI c\u1ee7a Git so v\u1edbi nh\u1eefng VCS kh\u00e1c<\/title>\n<meta name=\"description\" content=\"Git l\u00e0 g\u00ec? V\u00ec sao Git l\u1ea1i l\u00e0 h\u1ec7 th\u1ed1ng &quot;b\u1ecf xa&quot; t\u1ea5t c\u1ea3 nh\u1eefng VCS kh\u00e1c? N\u1eafm r\u00f5 c\u00e1ch s\u1eed d\u1ee5ng t\u1ed1i \u01b0u h\u00f3a nh\u1eefng \u01b0u \u0111i\u1ec3m c\u1ee7a Git ngay!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/itviec.com\/blog\/git-la-gi\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch tuy\u1ec7t v\u1eddi khi d\u00f9ng Git\" \/>\n<meta property=\"og:description\" content=\"Git l\u00e0 g\u00ec m\u00e0 m\u1ecdi developer \u0111\u1ec1u n\u00ean t\u00ecm hi\u1ec3u? L\u1ee3i \u00edch c\u1ee7a Git? Nh\u1eefng t\u00ednh n\u0103ng hay nh\u1ea5t c\u00f3 th\u1ec3 b\u1ea1n ch\u01b0a bi\u1ebft? Kh\u00e1m ph\u00e1 ngay!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/itviec.com\/blog\/git-la-gi\/\" \/>\n<meta property=\"og:site_name\" content=\"ITviec Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ITviec\" \/>\n<meta property=\"article:published_time\" content=\"2017-08-29T02:09:33+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-15T10:39:27+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-fb.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"335\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Hong Anh\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"Git l\u00e0 g\u00ec? Gi\u1ed1ng c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n kh\u00e1c, Git c\u0169ng h\u1ed7 tr\u1ee3 qu\u1ea3n l\u00fd code v\u00e0 l\u1ecbch s\u1eed thay \u0111\u1ed5i. Tuy nhi\u00ean, Git \u01b0u vi\u1ec7t h\u01a1n v\u00ec c\u00f3 kh\u1ea3 n\u0103ng t\u00e1ch\" \/>\n<meta name=\"twitter:creator\" content=\"@ITviec\" \/>\n<meta name=\"twitter:site\" content=\"@ITviec\" \/>\n<meta name=\"twitter:label1\" content=\"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi\" \/>\n\t<meta name=\"twitter:data1\" content=\"Hong Anh\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 ph\u00fat\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch TUY\u1ec6T V\u1edcI c\u1ee7a Git so v\u1edbi nh\u1eefng VCS kh\u00e1c","description":"Git l\u00e0 g\u00ec? V\u00ec sao Git l\u1ea1i l\u00e0 h\u1ec7 th\u1ed1ng \"b\u1ecf xa\" t\u1ea5t c\u1ea3 nh\u1eefng VCS kh\u00e1c? N\u1eafm r\u00f5 c\u00e1ch s\u1eed d\u1ee5ng t\u1ed1i \u01b0u h\u00f3a nh\u1eefng \u01b0u \u0111i\u1ec3m c\u1ee7a Git ngay!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/itviec.com\/blog\/git-la-gi\/","og_locale":"vi_VN","og_type":"article","og_title":"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch tuy\u1ec7t v\u1eddi khi d\u00f9ng Git","og_description":"Git l\u00e0 g\u00ec m\u00e0 m\u1ecdi developer \u0111\u1ec1u n\u00ean t\u00ecm hi\u1ec3u? L\u1ee3i \u00edch c\u1ee7a Git? Nh\u1eefng t\u00ednh n\u0103ng hay nh\u1ea5t c\u00f3 th\u1ec3 b\u1ea1n ch\u01b0a bi\u1ebft? Kh\u00e1m ph\u00e1 ngay!","og_url":"https:\/\/itviec.com\/blog\/git-la-gi\/","og_site_name":"ITviec Blog","article_publisher":"https:\/\/www.facebook.com\/ITviec","article_published_time":"2017-08-29T02:09:33+00:00","article_modified_time":"2024-11-15T10:39:27+00:00","og_image":[{"width":640,"height":335,"url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-fb.jpg","type":"image\/jpeg"}],"author":"Hong Anh","twitter_card":"summary_large_image","twitter_description":"Git l\u00e0 g\u00ec? Gi\u1ed1ng c\u00e1c h\u1ec7 th\u1ed1ng qu\u1ea3n l\u00fd phi\u00ean b\u1ea3n kh\u00e1c, Git c\u0169ng h\u1ed7 tr\u1ee3 qu\u1ea3n l\u00fd code v\u00e0 l\u1ecbch s\u1eed thay \u0111\u1ed5i. Tuy nhi\u00ean, Git \u01b0u vi\u1ec7t h\u01a1n v\u00ec c\u00f3 kh\u1ea3 n\u0103ng t\u00e1ch","twitter_creator":"@ITviec","twitter_site":"@ITviec","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"Hong Anh","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"13 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#article","isPartOf":{"@id":"https:\/\/itviec.com\/blog\/git-la-gi\/"},"author":{"name":"Hong Anh","@id":"https:\/\/itviec.com\/blog\/#\/schema\/person\/8c74ba4e6693c4bbe2ea8ecc3f35ebf2"},"headline":"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch tuy\u1ec7t v\u1eddi khi d\u00f9ng Git","datePublished":"2017-08-29T02:09:33+00:00","dateModified":"2024-11-15T10:39:27+00:00","mainEntityOfPage":{"@id":"https:\/\/itviec.com\/blog\/git-la-gi\/"},"wordCount":3610,"publisher":{"@id":"https:\/\/itviec.com\/blog\/#organization"},"image":{"@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#primaryimage"},"thumbnailUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-fb.jpg","articleSection":["Chuy\u00ean m\u00f4n IT","T\u00e0i li\u1ec7u IT online"],"inLanguage":"vi"},{"@type":"WebPage","@id":"https:\/\/itviec.com\/blog\/git-la-gi\/","url":"https:\/\/itviec.com\/blog\/git-la-gi\/","name":"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch TUY\u1ec6T V\u1edcI c\u1ee7a Git so v\u1edbi nh\u1eefng VCS kh\u00e1c","isPartOf":{"@id":"https:\/\/itviec.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#primaryimage"},"image":{"@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#primaryimage"},"thumbnailUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-fb.jpg","datePublished":"2017-08-29T02:09:33+00:00","dateModified":"2024-11-15T10:39:27+00:00","description":"Git l\u00e0 g\u00ec? V\u00ec sao Git l\u1ea1i l\u00e0 h\u1ec7 th\u1ed1ng \"b\u1ecf xa\" t\u1ea5t c\u1ea3 nh\u1eefng VCS kh\u00e1c? N\u1eafm r\u00f5 c\u00e1ch s\u1eed d\u1ee5ng t\u1ed1i \u01b0u h\u00f3a nh\u1eefng \u01b0u \u0111i\u1ec3m c\u1ee7a Git ngay!","breadcrumb":{"@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/itviec.com\/blog\/git-la-gi\/"]}]},{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#primaryimage","url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-fb.jpg","contentUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2017\/08\/git-la-gi-fb.jpg","width":640,"height":335,"caption":"git-la-gi"},{"@type":"BreadcrumbList","@id":"https:\/\/itviec.com\/blog\/git-la-gi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Chuy\u00ean m\u00f4n IT","item":"https:\/\/itviec.com\/blog\/chuyen-mon-it\/"},{"@type":"ListItem","position":2,"name":"Git l\u00e0 g\u00ec? 6 l\u1ee3i \u00edch tuy\u1ec7t v\u1eddi khi d\u00f9ng Git"}]},{"@type":"WebSite","@id":"https:\/\/itviec.com\/blog\/#website","url":"https:\/\/itviec.com\/blog\/","name":"ITviec Blog","description":"IT Jobs &amp; People in Vietnam","publisher":{"@id":"https:\/\/itviec.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/itviec.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"vi"},{"@type":"Organization","@id":"https:\/\/itviec.com\/blog\/#organization","name":"ITviec","url":"https:\/\/itviec.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/itviec.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2018\/12\/itviec-black-square-facebook.png","contentUrl":"https:\/\/itviec.com\/blog\/wp-content\/uploads\/2018\/12\/itviec-black-square-facebook.png","width":1800,"height":1800,"caption":"ITviec"},"image":{"@id":"https:\/\/itviec.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ITviec","https:\/\/x.com\/ITviec","https:\/\/www.linkedin.com\/company\/itviec","https:\/\/www.youtube.com\/channel\/UCYthAQ3bcGr57M_ag5gHDvQ"]},{"@type":"Person","@id":"https:\/\/itviec.com\/blog\/#\/schema\/person\/8c74ba4e6693c4bbe2ea8ecc3f35ebf2","name":"Hong Anh","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/secure.gravatar.com\/avatar\/46102fb8c76056a36229a03196550c3c43d9f628cf4cd75b5331839364558953?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/46102fb8c76056a36229a03196550c3c43d9f628cf4cd75b5331839364558953?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/46102fb8c76056a36229a03196550c3c43d9f628cf4cd75b5331839364558953?s=96&d=mm&r=g","caption":"Hong Anh"},"description":"After nearly 10 years working in the online industry, Anh eventually found her strong passion for content marketing and storytelling. She believes that this world is full of amazing untold stories which come from individuals' real experiences. She loves listening to people, getting know them, as well as understanding their desires, hope, pain, mistakes, struggle and life lessons. She loves helping people to tell their own stories. Anh wants to be a yoga trainer after retirement. However, in the mean time, she is here to write. Her favourite quote is \"After all, tomorrow is another day.\"","url":"https:\/\/itviec.com\/blog\/author\/anh-vu\/"}]}},"_links":{"self":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/posts\/12334","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/users\/58"}],"replies":[{"embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/comments?post=12334"}],"version-history":[{"count":0,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/posts\/12334\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/media\/12342"}],"wp:attachment":[{"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/media?parent=12334"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/categories?post=12334"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/itviec.com\/blog\/wp-json\/wp\/v2\/tags?post=12334"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}