SlideShare a Scribd company logo
I . Remote repository và local repository
Th nào là repository, branch?ế
Repository (kho chứa) được hiểu đơn giản là nơi chứa tất cả những thông tin cần thiết để duy trì và
quản lý các sửa đổi và lịch sử của toàn bộ project.
Tất cả dữ liệu của Repository đều được chứa trong thư mục bạn đang làm việc dưới dạng folder ẩn có
tên là .git
1. repository phân thành 2 loại là remote repository và local repository.
- Remote repository: Là repository để chia sẻ giữa nhiều người và bố trí trên server chuyên dụng.
- Local repository: Là repository bố trí trên máy của bản thân mình, dành cho một người dùng sử dụng.
2. Do repository phân thành 2 loại là local và remote
- nên với những công việc bình thường thì có thể sử dụng local repository và thực hiện trên toàn bộ máy sẵn có.
- Khi muốn công khai nội dung công việc mà bản thân đã làm trên local repository, thì sẽ upload lên remote repository rồi
công khai.
-thông qua remote repository cũng có thể lấy về nội dung công việc của người khác.
II . Branch trong Git là gì?
Branch là nhánh c a repositoryủ
• Khi bắt đầu khởi tạo một repository hoặc clone một repository, bạn sẽ
có một nhánh (branch) chính tên là master (bạn có thể hiểu master là
một cái thân cây). Đây là branch mà sẽ chứa toàn bộ các mã nguồn
chính trong repository.
• Đó là lý do tại sao, ở các phần trước khi chúng ta push hoặc pull hay
làm một số việc khác thì lại có tham số master trong câu lệnh, đó
nghĩa là chúng ta đang thực hiện thao tác trên branch master
II . Branch trong Git là gì?
• Cách t o m t branchạ ộ
- git branch tên_brand
Vi du : git branch develop
- Checkout m t branchộ
Vi du : git checkout develop
Switched to branch 'develop'
http://nvie.com/posts/a-successful-git-branching-
model/
http://nvie.com/files/Git-branching-model.pdf
• The main branches • Hotfix branches
Xoá m t branchộ
• Xoá một branch ở phía local
• Cách 1:
git branch –delete <branch_name>
hoặc
git branch -d <branch_name>
• Cách 2:
git branch –delete –force <branch_name>
hoặc
git branch -D <branch_name>
• Xoá một branch remote lưu ở local
git branch –delete –remotes <remote_name>/<branch_name>
hoặc
git branch -d -r <remote_name>/<branch_name>
• Chú ý:
• Cách 1 chỉ xóa được branch local khi nó đã được Merge vào branch
hiện tại và nó đã được push lên remote nếu nó có liên kết với một
branch remote.
• Cách 2 sẽ xóa được mọi branch kể cả không thỏa mãn điều kiện kể
trên.
• Chỉ xóa được branch khi đang ở branch khác
• Xoá m t branch phía remoteộ ở
git push <remote_name> –delete <branch_name>
VD: git push origin –delete <branch_name>
• Push một branch ở local lên remote
2 branch cùng tên
git push <remote_name> <branch_name>
VD : push branch master lên branch master trên remote
git push origin master
2 branch khác tên
git push <remote_name> <local_branch>:<remote_branch>
VD: push branch master lên remote với tên là develop
git push origin master:develop
m t s l nh git c b nộ ố ệ ơ ả
BraNCH
• 1 nhánh cho production (master):
Nhánh này đảm nhiệm lưu trữ code thực thi trên production gồm các
config cài đặt phù hợp để có thể chạy ổn định trên production.
• 1 nhánh cho develop (develop)
Nhánh này đảm nhiện lưu trữ code trên develop gồm các cài đặt phù
hợp để thực hiện việc test trên develop. Chỉ khi việc test trên develop
thực sự ổn định và hoàn thiện thì mới được đưa sản phẩm lên
production
• 1 nhánh con của develop (release)
Nhánh này đảm nhiệm nhiệm vụ đưa từng phần các nhánh nhỏ gộp
vào với nhau để thực hiện test các phần nhỏ vừa mới làm xong.
Tranning git

More Related Content

Viewers also liked

Provider Training Safety
Provider Training SafetyProvider Training Safety
Provider Training Safety
Jesman L. Simatupang
 
Новый формат медийной рекламы "Real Time Bidding"
Новый формат медийной рекламы "Real Time Bidding"Новый формат медийной рекламы "Real Time Bidding"
Новый формат медийной рекламы "Real Time Bidding"
Molinos
 
Presentasi kelompok 3 pkn
Presentasi kelompok 3 pknPresentasi kelompok 3 pkn
Presentasi kelompok 3 pkn
apotek agam farma
 
Погружение в алгоритм работы коллтрекинга: теория и кейсы
Погружение в алгоритм работы коллтрекинга: теория и кейсыПогружение в алгоритм работы коллтрекинга: теория и кейсы
Погружение в алгоритм работы коллтрекинга: теория и кейсы
CoMagic
 
A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...
A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...
A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...
Stacy Neier
 
assignment on favourite fashion designer
assignment on favourite fashion designerassignment on favourite fashion designer
assignment on favourite fashion designerHridika Kuntala
 
Presentatie Gemeentedag - Klant Centraal
Presentatie Gemeentedag - Klant CentraalPresentatie Gemeentedag - Klant Centraal
Presentatie Gemeentedag - Klant Centraal
TOPdesk
 
NTPC anta
NTPC anta NTPC anta
NTPC anta
Shivani Nandwana
 

Viewers also liked (8)

Provider Training Safety
Provider Training SafetyProvider Training Safety
Provider Training Safety
 
Новый формат медийной рекламы "Real Time Bidding"
Новый формат медийной рекламы "Real Time Bidding"Новый формат медийной рекламы "Real Time Bidding"
Новый формат медийной рекламы "Real Time Bidding"
 
Presentasi kelompok 3 pkn
Presentasi kelompok 3 pknPresentasi kelompok 3 pkn
Presentasi kelompok 3 pkn
 
Погружение в алгоритм работы коллтрекинга: теория и кейсы
Погружение в алгоритм работы коллтрекинга: теория и кейсыПогружение в алгоритм работы коллтрекинга: теория и кейсы
Погружение в алгоритм работы коллтрекинга: теория и кейсы
 
A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...
A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...
A Systematic Review of Textile Consumption in Brazil, China, Inida, Sri Lanka...
 
assignment on favourite fashion designer
assignment on favourite fashion designerassignment on favourite fashion designer
assignment on favourite fashion designer
 
Presentatie Gemeentedag - Klant Centraal
Presentatie Gemeentedag - Klant CentraalPresentatie Gemeentedag - Klant Centraal
Presentatie Gemeentedag - Klant Centraal
 
NTPC anta
NTPC anta NTPC anta
NTPC anta
 

Similar to Tranning git

Guilde GIT.pptx
Guilde GIT.pptxGuilde GIT.pptx
Guilde GIT.pptx
ssuser0b8037
 
Bang Cuu Chuong Git | NIIT
Bang Cuu Chuong Git | NIITBang Cuu Chuong Git | NIIT
Bang Cuu Chuong Git | NIIT
NIIT - ICT Hà Nội
 
Git Basic
Git BasicGit Basic
Git Basic
Nguyen Thieu
 
Giới thiệu git
Giới thiệu gitGiới thiệu git
Giới thiệu git
Long Ta
 
Git tutorial căn bản - Codeto Vietnam
Git tutorial căn bản - Codeto VietnamGit tutorial căn bản - Codeto Vietnam
Git tutorial căn bản - Codeto Vietnam
Hà Anh Sơn
 
VNPAY Git Seminar
VNPAY Git SeminarVNPAY Git Seminar
VNPAY Git Seminar
Mr Slowly
 
Git Using - pythonvietnam.info
Git Using - pythonvietnam.infoGit Using - pythonvietnam.info
Git Using - pythonvietnam.info
Khánh Nguyễn
 
Quản lý dự án phần mềm bằng SVN
Quản lý dự án phần mềm bằng SVN Quản lý dự án phần mềm bằng SVN
Quản lý dự án phần mềm bằng SVN
Lương Bá Hợp
 
2016
20162016
2016
linh linh
 
DDD - DuyLV - VINID - 17.07.2019
DDD - DuyLV - VINID - 17.07.2019DDD - DuyLV - VINID - 17.07.2019
DDD - DuyLV - VINID - 17.07.2019
Lê Văn Duy
 
Lab ccna ttg_v1
Lab ccna ttg_v1Lab ccna ttg_v1
Lab ccna ttg_v1
Ngo Kiet
 
Git workflow advanced - Trung tâm lập trình Codeto Vietnam
Git workflow advanced - Trung tâm lập trình Codeto VietnamGit workflow advanced - Trung tâm lập trình Codeto Vietnam
Git workflow advanced - Trung tâm lập trình Codeto Vietnam
Hà Anh Sơn
 
Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)
Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)
Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)
Levis Nickaster
 
Lab can ban ccna
Lab can ban ccnaLab can ban ccna
Lab can ban ccna
Nguyen Huu Thien An
 
Ứng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTT
Ứng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTTỨng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTT
Ứng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTT
MinhNguyen1493
 
Tortoise svn huong dan
Tortoise svn   huong danTortoise svn   huong dan
Tortoise svn huong danwhitehorse4IT
 
Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051
Mr Giap
 
How to write good code
How to write good code How to write good code
How to write good code
Minh Hoang
 

Similar to Tranning git (20)

Guilde GIT.pptx
Guilde GIT.pptxGuilde GIT.pptx
Guilde GIT.pptx
 
Bang Cuu Chuong Git | NIIT
Bang Cuu Chuong Git | NIITBang Cuu Chuong Git | NIIT
Bang Cuu Chuong Git | NIIT
 
Git Basic
Git BasicGit Basic
Git Basic
 
Giới thiệu git
Giới thiệu gitGiới thiệu git
Giới thiệu git
 
Git in real product
Git in real productGit in real product
Git in real product
 
Git tutorial căn bản - Codeto Vietnam
Git tutorial căn bản - Codeto VietnamGit tutorial căn bản - Codeto Vietnam
Git tutorial căn bản - Codeto Vietnam
 
VNPAY Git Seminar
VNPAY Git SeminarVNPAY Git Seminar
VNPAY Git Seminar
 
Git Using - pythonvietnam.info
Git Using - pythonvietnam.infoGit Using - pythonvietnam.info
Git Using - pythonvietnam.info
 
Quản lý dự án phần mềm bằng SVN
Quản lý dự án phần mềm bằng SVN Quản lý dự án phần mềm bằng SVN
Quản lý dự án phần mềm bằng SVN
 
2016
20162016
2016
 
DDD - DuyLV - VINID - 17.07.2019
DDD - DuyLV - VINID - 17.07.2019DDD - DuyLV - VINID - 17.07.2019
DDD - DuyLV - VINID - 17.07.2019
 
Lab ccna ttg_v1
Lab ccna ttg_v1Lab ccna ttg_v1
Lab ccna ttg_v1
 
Git workflow advanced - Trung tâm lập trình Codeto Vietnam
Git workflow advanced - Trung tâm lập trình Codeto VietnamGit workflow advanced - Trung tâm lập trình Codeto Vietnam
Git workflow advanced - Trung tâm lập trình Codeto Vietnam
 
Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)
Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)
Các công cụ cần thiết cho quá trình Reverse Engineering .NET (bản đầy đủ)
 
Lab can ban ccna
Lab can ban ccnaLab can ban ccna
Lab can ban ccna
 
Ứng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTT
Ứng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTTỨng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTT
Ứng dụng Git/Github trong hoạt động nhóm cho sinh viên CNTT
 
Tortoise svn huong dan
Tortoise svn   huong danTortoise svn   huong dan
Tortoise svn huong dan
 
Dsd02 sta
Dsd02 staDsd02 sta
Dsd02 sta
 
Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051Lập trình C cho VĐK 8051
Lập trình C cho VĐK 8051
 
How to write good code
How to write good code How to write good code
How to write good code
 

Tranning git

  • 1.
  • 2. I . Remote repository và local repository Th nào là repository, branch?ế Repository (kho chứa) được hiểu đơn giản là nơi chứa tất cả những thông tin cần thiết để duy trì và quản lý các sửa đổi và lịch sử của toàn bộ project. Tất cả dữ liệu của Repository đều được chứa trong thư mục bạn đang làm việc dưới dạng folder ẩn có tên là .git 1. repository phân thành 2 loại là remote repository và local repository. - Remote repository: Là repository để chia sẻ giữa nhiều người và bố trí trên server chuyên dụng. - Local repository: Là repository bố trí trên máy của bản thân mình, dành cho một người dùng sử dụng. 2. Do repository phân thành 2 loại là local và remote - nên với những công việc bình thường thì có thể sử dụng local repository và thực hiện trên toàn bộ máy sẵn có. - Khi muốn công khai nội dung công việc mà bản thân đã làm trên local repository, thì sẽ upload lên remote repository rồi công khai. -thông qua remote repository cũng có thể lấy về nội dung công việc của người khác.
  • 3. II . Branch trong Git là gì? Branch là nhánh c a repositoryủ • Khi bắt đầu khởi tạo một repository hoặc clone một repository, bạn sẽ có một nhánh (branch) chính tên là master (bạn có thể hiểu master là một cái thân cây). Đây là branch mà sẽ chứa toàn bộ các mã nguồn chính trong repository. • Đó là lý do tại sao, ở các phần trước khi chúng ta push hoặc pull hay làm một số việc khác thì lại có tham số master trong câu lệnh, đó nghĩa là chúng ta đang thực hiện thao tác trên branch master
  • 4. II . Branch trong Git là gì? • Cách t o m t branchạ ộ - git branch tên_brand Vi du : git branch develop - Checkout m t branchộ Vi du : git checkout develop Switched to branch 'develop'
  • 6. • The main branches • Hotfix branches
  • 7. Xoá m t branchộ • Xoá một branch ở phía local • Cách 1: git branch –delete <branch_name> hoặc git branch -d <branch_name> • Cách 2: git branch –delete –force <branch_name> hoặc git branch -D <branch_name> • Xoá một branch remote lưu ở local git branch –delete –remotes <remote_name>/<branch_name> hoặc git branch -d -r <remote_name>/<branch_name>
  • 8. • Chú ý: • Cách 1 chỉ xóa được branch local khi nó đã được Merge vào branch hiện tại và nó đã được push lên remote nếu nó có liên kết với một branch remote. • Cách 2 sẽ xóa được mọi branch kể cả không thỏa mãn điều kiện kể trên. • Chỉ xóa được branch khi đang ở branch khác • Xoá m t branch phía remoteộ ở git push <remote_name> –delete <branch_name> VD: git push origin –delete <branch_name>
  • 9. • Push một branch ở local lên remote 2 branch cùng tên git push <remote_name> <branch_name> VD : push branch master lên branch master trên remote git push origin master 2 branch khác tên git push <remote_name> <local_branch>:<remote_branch> VD: push branch master lên remote với tên là develop git push origin master:develop
  • 10. m t s l nh git c b nộ ố ệ ơ ả
  • 11.
  • 13. • 1 nhánh cho production (master): Nhánh này đảm nhiệm lưu trữ code thực thi trên production gồm các config cài đặt phù hợp để có thể chạy ổn định trên production. • 1 nhánh cho develop (develop) Nhánh này đảm nhiện lưu trữ code trên develop gồm các cài đặt phù hợp để thực hiện việc test trên develop. Chỉ khi việc test trên develop thực sự ổn định và hoàn thiện thì mới được đưa sản phẩm lên production • 1 nhánh con của develop (release) Nhánh này đảm nhiệm nhiệm vụ đưa từng phần các nhánh nhỏ gộp vào với nhau để thực hiện test các phần nhỏ vừa mới làm xong.