CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

67 61 1
CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP HCM CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB Ngành: CÔNG NGHỆ THÔNG TIN Chuyên ngành: CÔNG NGHỆ PHẦN MỀM Giảng viên hướng dẫn : Th.S Nguyễn Kim Hưng Sinh viên thực : Tô Lâm Bằng Duy MSSV: 1811062407 Trần Thanh Nhã MSSV: 1811061167 Đặng Ngọc Hùng MSSV: Huỳnh Quang Minh MSSV: Huỳnh Nguyễn Thanh Tú MSSV: Lớp: 18DTHC1 TP Hồ Chí Minh, LỜI CAM ĐOAN Chúng em xin cam đoan báo cáo cuối kì đề tài QUẢN LÝ SOURCE CODE BẰNG GITHUB chúng em thời gian qua Sản phẩm kết việc học hỏi, sáng tạo tích cực làm việc nhóm chúng em Ngồi ra, báo cáo có sử dụng số nguồn tài liệu tham khảo trích dẫn nguồn thích rõ ràng Chúng em xin hồn tồn chịu trách nhiệm trước mơn, khoa nhà trường cam đoan MỤC LỤC Danh mục hình ảnh Chương TỔNG QUAN 1.1 Giới thiệu đề tài Thực trạng nay, Cơng ty, tổ chức,… lập trình ứng dụng phần mềm phải phân chia dự án để thành viên làm phần Sau hồn thành thành viên ghép phần lại với để tạo sản phẩm hoàn chỉnh Với cách làm này, có nhiều hạn chế như: Khi ghép phần thành viên thường gặp nhiều khó khăn thành viên làm khác nên phát sinh lỗi khơng tương thích với nhau; ghép lại, thành viên phải làm việc thủ công nên tốn thời gian gặp khó khăn; thường sản phẩm phần mềm có nhiều thành phần sử dụng chung được, thành viên làm riêng biệt thành viên dùng thành phần thành viên khác xây dựng sẵn Nếu nhiều thành viên thao tác thành phần sản phẩm việc ghép lại gặp khó khăn phải đọc dịng code để tìm thành phần để gộp lại Những khó khăn dẫn đến khó khăn nhóm phải phân công công việc cho công việc thành viên tách biệt hoàn toàn Điều khó tốn thời gian, cơng sức Hiện nay, tất công ty phần mềm áp dụng dịch vụ quản lý mã nguồn trực tuyến để quản lý dự án phần mềm Có nhiều dịch vụ quản lý mã nguồn như: CVS, SVN,… Và GitHub là hệ thống quản lý dự án phiên code, hoạt động giống mạng xã hội cho lập trình viên Các lập trình viên clone lại mã nguồn từ repository và Github dịch vụ máy chủ repository cơng cộng, người tạo tài khoản để tạo kho chứa riêng để làm việc 1.2 Nhiệm vụ đồ án Tìm hiểu cách sử dụng GitHub xây dựng tài liệu nhâm hướng dẫn cách sử dụng GitHub Qua trang bị kỹ quản lý phiên dự án, đặc biệt thành viên tham gia có khoảng cách lớn mặt địa lý Chương CƠ SỞ LÝ THUYẾT 2.1 Giới thiệu Git 2.1.1 Git gì?  Git hệ thống kiểm soát phiên dùng để theo dõi thay đổi tập tin, dùng để thay đổi tập tin sử dụng lĩnh vực phát triển kỹ thuật phần mềm  Git hiểu hệ thống điều khiển mặt trình theo dõi nội dung Git sử dụng để lưu trữ nội dung chủ yếu sử dụng để lưu trữ mã tính khác mà cung cấp  Git coi hệ thống điều khiển phân tán có tốc độ xử lý nhanh đảm bảo toàn vẹn liệu hỗ trợ hiệu cao cho workflow phân tán Giống hệ thống quản lý phiên phân tán khác, thư mục Git máy tính kho chứa lịch sử Gồm có kho lưu trữ từ xa máy chủ kho lưu trữ cục lưu trữ máy tính nhà phát triển 2.1.2 Giới thiệu tính Git Một số tính đáng ý Git sau:  Mã nguồn mở(Open Source) Git một công cụ mã nguồn mở  Nó phát hành theo giấy phép GPL (General Public License)  Scalable Git có khả mở rộng , có nghĩa số lượng người dùng tăng lên, Git dễ dàng xử lý tình  Phân tán (Distributed) Một tính tuyệt vời Git được phân phối  Phân tán có nghĩa thay chuyển dự án sang máy khác, tạo “bản sao” tồn kho lưu trữ Ngồi ra, thay có kho lưu trữ trung tâm mà bạn gửi thay đổi đến, người dùng có kho lưu trữ riêng họ chứa toàn lịch sử commit dự án Chúng ta không cần kết nối với kho lưu trữ từ xa; thay đổi lưu trữ kho lưu trữ cục Nếu cần, đẩy thay đổi vào kho lưu trữ từ xa  Bảo mật (Security) Git bảo mật là an tồn Nó sử dụng SHA1 (Secure Hash Function) để đặt tên xác định đối tượng kho lưu trữ Các file commit kiểm tra truy xuất tổng kiểm tra thời điểm tốn Nó lưu trữ lịch sử theo cách mà ID commit cụ thể phụ thuộc vào lịch sử phát triển hồn chỉnh dẫn đến commit Sau xuất bản, người ta thay đổi phiên cũ  Tốc độ (Speed) Git rất nhanh , hồn thành tất nhiệm vụ thời gian Hầu hết hoạt động git thực kho lưu trữ cục bộ, cung cấp một tốc độ lớn  Ngồi ra, hệ thống kiểm sốt phiên tập trung liên tục giao tiếp với máy chủ Các kiểm tra hiệu suất Mozilla thực cho thấy nó cực kỳ nhanh so với VCS khác  Tìm nạp lịch sử phiên từ kho lưu trữ lưu trữ cục nhanh nhiều so với việc tìm nạp từ máy chủ từ xa Phần cốt lõi Git được viết C , bỏ qua chi phí thời gian chạy liên quan đến ngôn ngữ cấp cao khác Git phát triển để hoạt động nhân Linux; đủ khả năng để xử lý kho lưu trữ lớn một cách hiệu Ngay từ đầu, tốc độ và hiệu suất đã mục tiêu Git  Hỗ trợ phát triển phi tuyến tính(Supports non-linear development) Git hỗ trợ phân nhánh hợp liền mạch , giúp hình dung điều hướng phát triển phi tuyến tính Một nhánh Git đại diện cho commit Chúng ta xây dựng cấu trúc nhánh đầy đủ với trợ giúp commit gốc  Phân nhánh hợp nhất(Branching vs merge) Phân nhánh hợp nhất là các tính tuyệt vời của Git, điều làm cho khác với cơng cụ SCM khác Git cho phép tạo nhiều nhánh mà không ảnh hưởng đến Chúng ta thực tác vụ như tạo , xóa và hợp nhất(merge) nhánh tác vụ vài giây Dưới số tính đạt cách phân nhánh: o Chúng ta có thể tạo nhánh riêng cho mơ-đun dự án, commit xóa muốn o Chúng ta có một nhánh sản xuất , ln có vào sản xuất hợp để thử nghiệm nhánh thử nghiệm o Chúng ta tạo một nhánh demo cho thử nghiệm kiểm tra xem có hoạt động hay khơng Chúng ta xóa cần o Lợi ích cốt lõi việc phân nhánh muốn đẩy thứ đến kho lưu trữ từ xa, khơng cần phải đẩy tất nhánh Chúng ta chọn vài nhánh tất chúng  Đảm bảo liệu(Đảm bảo liệu) Mơ hình liệu Git đảm bảo tính tồn vẹn code của đơn vị dự án Nó cung cấp một ID commit nhất cho commit thơng qua thuật tốn SHA  Chúng ta có thể truy xuất và cập nhật commit ID commit Hầu hết hệ thống kiểm sốt phiên tập trung khơng cung cấp tính tồn vẹn theo mặc định  Khu vực dàn dựng (Staging) Các khu vực Staging cũng một chức độc đáo của Git Nó coi một bản xem trước commit chúng ta , nữa, một khu vực trung gian nơi commit định dạng xem xét trước hoàn thành Khi bạn thực commit, Git thực thay đổi khu vực dàn dựng biến chúng thành commit Chúng ta phép thêm xóa thay đổi khỏi khu vực dàn dựng Khu vực dàn dựng coi nơi Git lưu trữ thay đổi Mặc dù, Git khơng có thư mục dàn dựng chuyên dụng, nơi lưu trữ số đối tượng đại diện cho thay đổi file (đốm màu) Thay điều này, sử dụng file gọi mục - Bước 6: Resovle conflict dự án 51 - Bước 7: Gõ lệnh: git status  git add git rebase - -continue - Bước 8: Push lên GitHub lệnh: git push origin -f - Bước 9: Ta thấy conflict đươc giải  Nhấn Merge pull request Hình 3.29 Giải xung đột rebase 52 3.15 Hướng dẫn giải xung đột merge 3.15.1 Tạo xung đột (create conflict) Tương tự, ta có: - Bên A: - Tạo branch có tên feature/mouse-run  Thêm method run  Push branch feature/horse-run lên GitHub lệnh : git push origin Tạo Pull request GitHub có tên feature/mouse-run 53 - Bên B:  Bên B pull dự án lệnh: git pull Tiến hành tạo nhánh feature/mouse-jump Thêm method jump  Push branch lên GitHub lệnh: git push origin Tạo Pull request GitHub có tên feature/horse-jump 54 3.15.2 Giải xung đột (Resolve conflict) - Bước 1: Bên A Merge pull request feature/mouse jump - Bước 2: Khi Merge pull request Feature/mouse run, ta thấy xuất conflict sau: 55 - Bước 3: Resolve conflict cách: Chuyển sang nhánh main lệnh:  git checkout  git pull  git merge main Ta thấy xuất conflict file horse.js - Bước 4: Resovle conflict dự án 56 - Bước 5: Tiến hành git status  git add  git commit -m ‘message’ - Bước 6: Ta thấy conflict đươc giải  Nhấn Merge pull request 57 Hình 3.30 Giải xung đột rebase 58 3.16 Hướng dẫn tạo Issues GitHub - Bước 1: Trên GitHub nhấn chọn Issues  New issue - Bước 2: Nhập Title Discription Issue  Nhấn Submit new issue 59 - Bước 3: Những người khác thấy Issues tương tác cách Comment Hình 3.31 Tạo Issue GitHub 60 3.17 Hướng dẫn tạo Tag GitHub - Bước 1: Nhấn chọn Tag - Bước 2: Nhấn Create a new release 61 - Bước 3: Điền thông tin Tag cần tạo bao gồm: Choose a tag Target (branch) Release title Discription, Và đính kèm file qua  Attach binaries by dropping them here or selecting them - Bước 4: Có thể chọn This is a pre-release  Nhấn Publish release Hình 3.32 Tạo Tag GitHub 62 3.18 Trending GitHub - Bước 1: Trên điều hướng GitHub  Nhấn chọn Explore - Bước 2: Nhấn chọn Trending (ta tìm kiếm theo ngơn ngữ, ngơn ngữ lập trình) Hình 3.32 Trending GitHub 63 Chương KẾT LUẬN VÀ HỎI ĐÁP 4.1 KẾT LUẬN Ngoài mục đích nơi để lưu trữ dự án sử dụng Git, GitHub nơi giúp lập trình viên cải thiện kĩ thân Hiện nay, GitHub dịch vụ phổ biến để lưu trữ dự án mã nguồn mở Các lập trình viên khác tham gia đóng góp vào dự án thơng qua việc sử dụng Git GitHub Nếu bạn chưa đủ khả để đóng góp vào dự án mà bạn muốn tham gia, bạn học hỏi kinh nghiệm từ lập trình viên khác cách theo dõi đóng góp họ Ngồi việc theo dõi dự án mà bạn biết, bạn khám phá dự án nhiều người ý đến thơng qua tính năng Explore và Trending GitHub thân thiện với người dùng việc có hướng dẫn rõ ràng trực quan tại https://guides.github.com/ 4.2 HỎI ĐÁP 64 xx ... án, sử dụng  Github giúp lưu lại thay đổi mà bạn đẩy lên repository Có thể nói chức giống với Google Drive  Quản lý source code dễ dàng: Nếu muốn tạo repo, nguồn code từ repo lưu sẵn Github Nó... khoàn GitHub cá nhân - Bước 3: Nhập mã xác nhận GitHub gửi qua email Hình 3.3 Nhập mã xác nhận 15 - Bước 4: Đăng nhập vào GitHub Hình 3.4 Đăng nhập vào GitHub 16 3.2 Hướng dẫn tạo Repository GitHub. .. 43 - Bước 4: Kiểm tra code - Bước 5: Gửi phản hồi lên GitHub cách nhấn Review changes  Approve  Submit review Hình 3.26 Review code local 3.13 Hướng dẫn revert code phiên cũ - Bước 1: Thêm

Ngày đăng: 22/10/2021, 11:36

Hình ảnh liên quan

Hình 3.2. Tạo tài khoàn GitHub cá nhân - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.2..

Tạo tài khoàn GitHub cá nhân Xem tại trang 17 của tài liệu.
Hình 3.3. Nhập mã xác nhận - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.3..

Nhập mã xác nhận Xem tại trang 17 của tài liệu.
Hình 3.4. Đăng nhập vào GitHub - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.4..

Đăng nhập vào GitHub Xem tại trang 18 của tài liệu.
Hình 3.5. Tạo mới một Repository - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.5..

Tạo mới một Repository Xem tại trang 20 của tài liệu.
Hình 3.6. Thêm thành viên khác vào dự án (Manage access) - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.6..

Thêm thành viên khác vào dự án (Manage access) Xem tại trang 21 của tài liệu.
Hình 3.8. Thêm file vào dự án 3.5.2. Chỉnh sửa file & xem thay đổi (git diff) - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.8..

Thêm file vào dự án 3.5.2. Chỉnh sửa file & xem thay đổi (git diff) Xem tại trang 24 của tài liệu.
Hình 3.9. Chỉnh sửa file vừa tạo 3.5.3. Xóa file - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.9..

Chỉnh sửa file vừa tạo 3.5.3. Xóa file Xem tại trang 25 của tài liệu.
Hình 3.10. Xóa file từ dự án - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.10..

Xóa file từ dự án Xem tại trang 26 của tài liệu.
Hình 3.11. Push dự án lên GitHub - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.11..

Push dự án lên GitHub Xem tại trang 28 của tài liệu.
3.7. Hướng dẫn xem lịch sử commit (git log, git show) - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

3.7..

Hướng dẫn xem lịch sử commit (git log, git show) Xem tại trang 29 của tài liệu.
Hình 3.12. Hiển thị các commits bằng lệnh git log - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.12..

Hiển thị các commits bằng lệnh git log Xem tại trang 29 của tài liệu.
Hình 3.13. Hiển thị các commits trên GitHub 3.7.2. Xem lịch sử của một commit cụ thể bất kì (git show) - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.13..

Hiển thị các commits trên GitHub 3.7.2. Xem lịch sử của một commit cụ thể bất kì (git show) Xem tại trang 30 của tài liệu.
Hình 3.15. git reset -- soft (Repository về Staging Area) 3.8.2. Khôi phục từ Repository về Working Direction - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.15..

git reset -- soft (Repository về Staging Area) 3.8.2. Khôi phục từ Repository về Working Direction Xem tại trang 31 của tài liệu.
Hình 3.18. Push lên lại GitHub các thay đổi - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.18..

Push lên lại GitHub các thay đổi Xem tại trang 33 của tài liệu.
← Hình 3.20. Push branch vừa tạo lên GitHub - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.20..

Push branch vừa tạo lên GitHub Xem tại trang 35 của tài liệu.
3.11. Hướng dẫn Review code trên GitHub - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

3.11..

Hướng dẫn Review code trên GitHub Xem tại trang 39 của tài liệu.
Hình 3.23. Khởi tạo một Pull request - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.23..

Khởi tạo một Pull request Xem tại trang 39 của tài liệu.
- Bước 4: Nhập ý kiến nhận xét  Nhấn Star ta review - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

c.

4: Nhập ý kiến nhận xét  Nhấn Star ta review Xem tại trang 41 của tài liệu.
Hình 3.24. Review code - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.24..

Review code Xem tại trang 41 của tài liệu.
Hình 3.25. Merge sau vào nhánh Main - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.25..

Merge sau vào nhánh Main Xem tại trang 43 của tài liệu.
Hình 3.26. Review code trên local - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.26..

Review code trên local Xem tại trang 46 của tài liệu.
Hình 3.27. Revert code về phiên bản cũ - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.27..

Revert code về phiên bản cũ Xem tại trang 47 của tài liệu.
- Bước 2: Tiếp tục bê nA tiến hành merge Pull request feature/horse-run, ta thấy xuất hiện conflict - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

c.

2: Tiếp tục bê nA tiến hành merge Pull request feature/horse-run, ta thấy xuất hiện conflict Xem tại trang 51 của tài liệu.
Hình 3.28. Tạo xung đột - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.28..

Tạo xung đột Xem tại trang 51 của tài liệu.
Hình 3.30. Giải quyết xung đột bằng rebase - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.30..

Giải quyết xung đột bằng rebase Xem tại trang 60 của tài liệu.
Hình 3.31. Tạo Issue trên GitHub - CÔNG CỤ PHÁT TRIỂN PHẦN MỀM QUẢN LÝ SOURCE CODE BẰNG GITHUB

Hình 3.31..

Tạo Issue trên GitHub Xem tại trang 62 của tài liệu.

Mục lục

  • Danh mục hình ảnh

  • Chương 1. TỔNG QUAN

    • 1.1. Giới thiệu đề tài

    • 1.2. Nhiệm vụ đồ án

    • 2.1.2. Giới thiệu các tính năng của Git

    • 2.1.3. Các tiện tích khi sử dụng Git

    • 2.1.4. Một số khái niệm cơ bản trong git

    • 2.2. Giới thiệu GitHub

      • 2.2.2 Các tính năng của GitHub

      • 2.2.3 Một số lợi ích của GitHub

      • 2.2.4 Các thuật ngữ cơ bản của GitHub

      • 2.2.5 Các lệnh cơ bản

      • Chương 3. HƯỚNG DẪN SỬ DỤNG

        • 3.1. Hướng dẫn Đăng kí tài khoản – Đăng nhập

        • 3.2. Hướng dẫn tạo Repository trên GitHub

        • 3.3. Hướng dẫn thêm thành viên (User-Permission)

        • 3.4. Hướng dẫn Clone dự án từ GitHub về máy local

        • 3.5.2. Chỉnh sửa file & xem thay đổi (git diff)

        • 3.6. Hướng dẫn Push dự án lên GitHub

        • 3.7. Hướng dẫn xem lịch sử commit (git log, git show)

          • 3.7.1. Xem lịch sử các commits (git log)

          • 3.7.2. Xem lịch sử của một commit cụ thể bất kì (git show)

          • 3.8 Hướng dẫn khôi phục commit (git reset)

            • 3.8.1. Khôi phục từ Repository về Staging Area

            • 3.8.2. Khôi phục từ Repository về Working Direction

Tài liệu cùng người dùng

Tài liệu liên quan