Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 19 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
19
Dung lượng
1,1 MB
Nội dung
ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH TRƯỜNG ĐẠI HỌC CƠNG NGHỆ THƠNG TIN BÁO CÁO TÌM HIỂU VỀ GIT – GITHUB Nhóm sinh viên thực hiện: Nguyễn Đức Phương - 21521307 Trần Tuấn Vu - 21522807 Cao Quảng An Hưng - 21522112 Nguyễn Trần Quang Sang - 21522545 Lê Văn Phú - 21522466 MỤC LỤC 13 CHƯƠNG TỔNG KẾT 17 TÀI LIỆU THAM KHẢO 19 CHƯƠNG GIỚI THIỆU VỀ GIT I Sơ lược Git - Git, viết tắt từ Global Information Tracker Là hệ thống quản lý phiên phân tán (Distributed Version Control System) xuất vào năm 2005 Hay để dễ hiểu, Git dùng để quản lý mã nguồn dự án Git biết đến hệ thống phổ biến nhất giới lập trình, nhờ vào khả quản lý tính hữu dụng công việc - Cơ chế lưu trữ phiên Git tạo snapshot (lưu lại nội dung tất tập tin, thư mục thời điểm đó) tập tin sau commit, từ cho phép ta tái sử dụng lại ảnh chụp mà bạn hiểu phiên Đây cung lợi Git so với DVCS khác khơng “lưu cứng” liệu mà lưu với dạng snapshot - Git giúp chúng ta: + Cập nhật lưu lại phiên khác source code + Khôi phục lại source code từ phiên bất kỳ + Dễ dàng so sánh thay đổi từ phiên khác + Phát sửa phần nào, làm phát sinh lỗi + Khôi phục lại tập tin bị mất + Phối hợp với đồng nghiệp cách hiệu - Lợi ích sử dụng Git + Khi khơng có kết nối internet, làm việc commit + Thời gian trễ thấp hầu hết liệu chép máy cục + Làm việc dễ dàng với branch + Dễ dàng việc deployment sản phẩm II Lịch sử lý đời GIT: Lịch sử: - Git đời từ chút kế thừa có tính sáng tạo Linus Torvalds, cụ thể: + Nhân Linux dự án phần mềm mã nguồn mở phạm vi lớn Trong phần lớn thời gain bảo trì nhân Linux (1991-2002), thay đổi phần mềm truyền dạng vá tập tin lưu trữ Vào năm 2002, dự án nhân Linux bắt đầu sử dụng DVCS độc quyền có tên BitKeeper + Vào năm 2005, hợp tác cộng đồng phát triển nhân Linux công ty thương mại phát triển BitKeeper bị phá vỡ, công cụ khơng cịn cung cấp miễn phí Chính điều thúc đẩy cộng đồng phát triển Linux (chính xác Linus Torvalds, người sáng lập Linux) phát triển công cụ riêng họ dựa học từ việc sử dụng BitKeeper Lý do: - Theo trên, số mục tiêu hệ thống vạch sau: + Nhanh + Thiết kế đơn giản + Hỗ trợ tốt cho “phát triển phi tuyến tính” (non-linear development) + Phân tán tồn diện + Có khả xử lý dự án lớn giống nhân Linux cách hiệu (về mặt tốc độ khối lượng liệu) - Kết quả, Git đời khoảng thời gian – 2005 Linus Torvalds Kể từ năm 2005, trì Junio Hamano người khác, đến nay, Git tiến hóa phát triển toàn diện để dễ dàng sử dụng tiêu chí ban đầu đảm bảo III Tại Hệ thống kiểm soát phiên Git lại cần thiết? - Những dự án thực tế thường có nhiều nhà phát triển làm việc song song Vì vậy, hệ thống kiểm sốt phiên Git cần thiết để đảm bảo khơng có xung đột code họ - Ngoài ra, yêu cầu dự án thay đổi thường xuyên Một hệ thống kiểm soát phiên cho phép nhà phát triển quay lại phiên cu code - Và, vài dự án chạy song song có liên quan đến sở mã Trong trường hợp thế, ý tưởng phân nhánh Git rất quan trọng IV Hệ điều hành hỗ trợ - Git có khả chạy nhiều hệ điều hành khác như: Linux, Windows, Mas OSX, … V Các công ti lớn sử dụng Git - Netflix, Reddit, Shoptify, Udemy, Robinhood, Delivery Hero, … CHƯƠNG MỘT SỐ THUẬT NGỮ CƠ BẢN VỀ GIT I Repository - Là nơi chứa toàn thơng tin cần thiết để trì quản lý tiến trình dự án cung nơi quản lý thay đổi lịch sử toàn project - Repository Git chia thành hai loại: + Local repository: repository để chia sẻ nhiều người + Remote repository: repository dành cho người sử dụng, bố trí máy tính user Image source: https://viblo.asia/p/tim-hieu-mot-so-khai-niem-va-ki-thuat-thuongdung-trong-git-phan-1-naQZR4pP5vx II Commit - Được hiểu để ghi lại thay đổi file vào repository Khi thực commit, repository tạo commit để ghi lại khác biệt trạng thái lần trước Các commit nối tiếp với nhau, xếp theo thời gian Image Source: https://ilook.asia/publicimages/images/122018/capture_intro1_3_1.png III Branch - Branch trỏ có khả di chuyển được, trỏ đến commit repository Branch mặc định có tên master, người dùng thêm branch mới, trỏ tạo trỏ đén commit - Đây mạnh Git Đối với dự án có nhiều người việc code branch nhất định gây khó khăn, Việc lập trình viên thực branch khác trở nên thuận tiện hơn, không làm ảnh hưởng đến nhau, giúp giải đồng thời nhiều nhiệm vụ lúc IV Conflict - Conflict trường hợp xuất có thay đổi dịng code, máy tính khơng thể tự định dòng code “đúng” Đúng có nghĩa “ý đồ lập trình viên” - Để giải mâu thuẫn bạn phải tự tay để sửa xung đột Việc nhìn vào file bị conflict tự định dịng code giữ lại, dịng xóa bỏ V Staging Area - Là tập tin đơn giản nằm thư mục git, chứa thơng tin trạng thái file dự án CHƯƠNG CÁC LỆNH, THAO TÁC CƠ BẢN VÀ NÂNG CAO CỦA GIT I Những câu lệnh bản: git config - Là câu lệnh mà phải thực thi đầu tiên cài đặt Git lên máy Nó thực thi lệnh thiết lập tên (user name) email bạn Do đó, rất hữu ích muốn biết viết đoạn code để trao đổi với trường hợp khơng hiểu mục đích đoạn code - Cú pháp để sử dụng: + Set username: git config global user.name “Your name” + Set email: git config global user.email “Your email” git version - Là câu lệnh để hiển thị phiên git mà sử dụng máy tính - Cú pháp để sử dụng: git version git init - Là câu lệnh sử dụng bắt đầu project Khi thực thi câu lệnh, giúp tạo repository mới, sau nơi để quản lý source code developers - Cú pháp để sử dụng: git init git clone - Một repository kho lưu trữ git( github, gitlab) tải máy user - Cú pháp: git clone git add - Tất file code file chỉnh sửa thêm vào repository - Cú pháp: + Thêm file vào staging area: git add file_name + Thêm tất file vào staging area: git add * git commit - Là câu lệnh sử dụng phổ biến nhất Khi thực thi, câu lệnh giúp lưu thay đổi file staging area xuống repository - Cú pháp: git commit -m “your useful commit message” git status - Câu lệnh cho phép xem tình trạng mã nguồn có file thêm chỉnh sửa cung cho biết file nằm staging area nằm staging area - Cú pháp: git status git branch - Ở repository, luôn chứa nhiều nhánh riêng biệt dùng để triển khai thực công việc độc lập với nhánh khác - Cú pháp: + Hiển thị branch có repository nhất định: git branch + Tạo branch mới: git branch + Xoá branch: git branch -d git checkout - Câu lệnh dùng để chuyển qua chuyển lại branch - Cú pháp: + Để di chuyển: git checkout + Vừa di chuyển, vừa tạo chưa tồn câu lệnh: git checkout -b 10 git revert - Hoàn lại, hồi lại tác vụ làm - Cú pháp: git revert 11 git reset - Xoá commit nhánh phục hồi thay đổi chưa commit Ngoài ra, loại bỏ file khỏi staging area - Cú pháp: git reset II Những câu lệnh trung bình: git remote - git remote câu lệnh sử dụng để lưu trữ repository lên dịch vụ lưu trữ từ xa (gitlab, github) Vì sau gọi câu lệnh git init để khởi tạo repository tồn máy local - Cú pháp: git remote add git push - câu lệnh sử dụng để đồng bộ, cập nhật thay đổi source code(file) commit local lên dịch vụ lưu trữ - Cú pháp: git push -u Lưu ý: Trước sử dụng git push nên cấu hình origin upstream Syntax: git push –set-upstream git fetch - Được sử dụng để quản lý source code làm việc nhóm Những commit bạn thành viên khác cập nhật thông tin commit, branch, - Cú pháp: git fetch 10 git pull - Khi gọi đến câu lệnh này, tất nội dung dịch vụ lưu trữ từ xa tải xuống local repository - Cú pháp: git pull git stash - Cho phép lưu trữ file chỉnh sửa vùng nhớ tạm/ - Cú pháp: + Xem tất stash có: git stash list + Áp dụng thay đổi stash lên branch sử dụng: git stash apply git stash pop git log - Xem tất commit trước xếp theo thời gian - Cú pháp: git log git shortlog - Xem git log với nội dung vắn tắt - Cú pháp: git shortlog git show - Xem thông tin chi tiết commit ngẫu nhiên - Cú pháp: git show git rm - Xoá file cừ code base - Cú pháp: git rm 11 10 git merge - Gộp, liên kết source code thay đổi branch khác lên branch sử dụng - Cú pháp: git merge III Những câu lệnh nâng cao: git rebase - Tương tự git merge, kết hợp branch khác vào branch sử dụng thời điểm Tuy nhiên, git rebase hiển thị hình tồn lịch sử commit Chúng ta nên sử dụng có nhiều branch riêng dùng để tổng hợp chúng lại thành branch nhất Do đó, lịch sử commit trở nên dễ kiểm soát truy vết - Cú pháp: git rebase git bisect - Liệt kê bad commits - Cú pháp: git bisect start (bắt đầu sử dụng) => git bisect good a123 (cho biết commit tốt) => git bisect bad z123 (cho biết commit xấu) git cherry-pick - Một lệnh rất hữu ích, cho phép chọn branch bất kỳ từ branch bất kỳ sau áp dụng vào branch sử dụng - Cú pháp: git cherry-pick git archive - Khi gọi đến câu lệnh này, thực việc kết hợp nhiều tệp thành tệp nhất Cơ giống file rar zip Do đó, giải nén tệp đấy để lấy tệp bên - Cú pháp: git archive –format zip Head > archive-HEAD.zip git pull-rebase 12 - Nếu bạn muốn download content từ dịch vụ lưu trữ dùng rebase thay merge sử dụng git pull –rebase git blame - Được sử dụng để kiểm tra nội dung bên file bất kỳ, giúp xác định thực chỉnh sửa lên file - Cú pháp: git blame git mv - Đổi tên cu git file sang tên - Cú pháp: git mv git clean - Xoá tất nội dung thay đổi với file chưa theo dõi - Cú pháp: git clean CHƯƠNG IV GITHUB I Sơ lược Github - Một cách tốt nhất để chia sẻ bạn học với người khác đưa mã bạn lên GitHub Github phát triển vào ngày 19 tháng 10 năm 2007 Sau trang web đưa vào tháng năm 2008 nhà nhà phát triển Tom Preston-Werner, Chris Wanstrath, PJ Hyett GitHub vừa trang web vừa dịch vụ hỗ trợ phát triển phần mềm cách cho phép bạn lưu trữ mã vùng chứa, gọi kho lưu trữ cách theo dõi thay đổi thực mã bạn Ngồi ra, cung cấp dịch vụ lưu trữ công cụ để xây dựng, kiểm tra triển khai mã - GitHub sử dụng Git, công cụ phát triển kiểm soát phiên bản, để quản lý dự án bạn cách theo dõi thay đổi tệp cho phép nhiều người làm việc dự án Mặc dù GitHub Git có tên giống nhau, GitHub dịch vụ Git công cụ phát triển sử dụng bạn bên ngồi khơng có GitHub 13 II Tại Github lại quan trọng? - Có nhiều lý việc biết GitHub lại quan trọng phát triển cá nhân bạn với tư cách nhà phát triển Một phần lớn sức hấp dẫn Github quyền truy cập mà cấp cho nhà phát triển vào cộng đồng lớn nhà phát triển khắp giới, người công khai chia sẻ mã, dự án công cụ phát triển phần mềm họ với Do đó, bạn muốn tiếp tục phát triển kỹ Git mình, tạo danh mục lập trình tìm việc, GitHub trợ giúp III Khái quát giao diện Github Tạo tài khoản: - Bạn thấy trang có biểu mẫu tiêu đề "Creat your account" - Điền vào trường tên người dùng, địa email mật Chọn tên người dùng email rất quan trọng! 14 Cài đặt: - Bạn trả lời câu hỏi tùy chọn tiếp tục cách nhấp vào nút Complete setup để hoàn tất việc tạo tài khoản 15 - Trình duyệt bạn hiển thị bảng điều khiển cá nhân với phần dành cho dự án bạn số thông báo: + Read the guide: Đọc phần hướng dẫn + Start a project: Bắt đầu dự án + Create repository: Tạo mục chứa Khái quát tạo kho lưu trữ từ xa bạn GitHub: 16 - Trên GitHub, tạo kho lưu trữ cách nhấp vào nút New repository trang chủ - Trên trang kho lưu trữ mới, đặt tên cho kho lưu trữ bạn Sau đặt tên cho kho lưu trữ, nhấp vào Create repository CHƯƠNG TỔNG KẾT I.Kết đạt - Tìm hiểu nắm thơng tin Git Github Có khả giải thích chi tiết giao diện sử dụng project Github Hiểu lệnh sử dụng Git để sử dụng Git lẫn Github nhuần nhuyễn Rồi từ thành viên nhóm trang bị thêm cho cơng cụ hỗ trợ đắc lực đường trở thành lập trình viên, cách chuyên nghiệp hiệu II Bảng phân công công việc 17 STT Họ tên Trần Tuấn Vu - Lê Văn Phú - Cao Quảng An Hưng - Nguyễn Trần Quang Sang - Nguyễn Đức Phương - Nhiệm vụ Tìm hiểu lịch sử đời, lý đời, hệ điều hành hỗ trợ, số ví dụ thực tế công ty lớn dùng git để lưu trữ source Tìm hiểu số khái niệm git, câu lệnh + số lệnh nâng cao Tìm hiểu lịch sử đời, lý đời, khái quát giao diện Github Tìm hiểu tổng quan git github tổng hợp kiến thức cần thiết vào file word báo cáo Quay video thực file đề mơ tả tìm hiểu thêm số lệnh nâng cao git TÀI LIỆU THAM KHẢO [DVCD ?] https://vi.theastrologypage.com/distributed-version-control-system [An introduction to Git] https://www.freecodecamp.org/news/what-is-git-and-how-to-use-it-c341b049ae61/ [Sơ lược lịch sử Git] https://yunwuxin1.gitbooks.io/git/content/vi/c8cf03f9bf3367e7d612a0fa058ed068/ 96dd76f56bddcac80d652d744479d194.html [Git and Github introduction] https://www.w3schools.com/git/git_intro.asp?remote=github#:~:text=Git%20is %20a%20popular%20version,Tracking%20code%20changes [Git on Wikipedia] 18 https://en.wikipedia.org/wiki/Git#:~:text=13%20External %20links-,History,maintain%20the%20project%20since%202002 [Git commands] https://dzone.com/articles/top-35-git-commands-with-examples-and-bonus [Git branch gì?] https://freetuts.net/git-branch-la-gi-branch-master-1072.html [Git gì?] https://topdev.vn/blog/git-la-gi/#3-checkout [Tìm hiểu thêm git] https://csc.edu.vn/lap-trinh-va-csdl/tin-tuc/kien-thuc-lap-trinh/Git-la-gi Nhungkhai-niem-co-ban-khi-lam-viec-tren-Git-4133 [Git lệnh bản] https://viblo.asia/p/nhung-dieu-can-biet-ve-git-va-nhung-lenh-co-ban-tren-git6J3ZgNOqKmB [Git tính bản] https://www.slideshare.net/hp23192/gii-thiu-git-v-mt-s-tnh-nng-c-bn [Git thuật ngữ bản] https://ilook.asia/thu-thuat/kien-thuc-ve-git-phan-1-nhung-khai-niem-va-thuat-nguco-ban-ve-git-90.html [Features, Commands and Workflow in Git] https://www.simplilearn.com/tutorials/git-tutorial/what-is-git 19 ... CHƯƠNG TỔNG KẾT I.Kết đạt - Tìm hiểu nắm thơng tin Git Github Có khả giải thích chi tiết giao diện sử dụng project Github Hiểu lệnh sử dụng Git để sử dụng Git lẫn Github nhuần nhuyễn Rồi từ... khái quát giao diện Github Tìm hiểu tổng quan git github tổng hợp kiến thức cần thiết vào file word báo cáo Quay video thực file đề mơ tả tìm hiểu thêm số lệnh nâng cao git TÀI LIỆU THAM KHẢO... 96dd76f56bddcac80d652d744479d194.html [Git and Github introduction] https://www.w3schools.com /git/ git_intro.asp?remote =github# :~:text =Git% 20is %20a%20popular%20version,Tracking%20code%20changes [Git on Wikipedia]