1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Báo cáo bảo trì phần mềm giới thiệu về công cụ quản lý phiên bản

22 4 0

Đ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

Thông tin cơ bản

Tiêu đề Báo cáo bảo trì phần mềm giới thiệu về công cụ quản lý phiên bản
Tác giả Huỳnh Quang Nghi, Trần Nguyễn Hữu Lộc, Nguyễn Hồ Minh Phú
Trường học Trường Đại học Cần Thơ, Trường Công nghệ Thông tin và Truyền thông, Khoa Công nghệ Phần mềm
Chuyên ngành Công nghệ phần mềm
Thể loại Báo cáo
Năm xuất bản 2023
Thành phố Cần Thơ
Định dạng
Số trang 22
Dung lượng 1,72 MB

Nội dung

Công cụ này cho phép người dùng theo dõi và kiểmsoát các thay đổi trong dự án phần mềm hoặc tài liệu, đồng thời lưu giữ các phiênbản trước đó để có thể phục hồi nếu cần thiết.. Công cụ q

Trang 1

TRƯỜNG ĐẠI HỌC CẦN THƠ TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

KHOA CÔNG NGHỆ PHẦN MỀM

BÁO CÁO BẢO TRÌ PHẦN MỀM

GIỚI THIỆU

VỀ CÔNG CỤ QUẢN LÝ PHIÊN BẢN

Nguyễn Hồ Minh Phú B2012128

Trang 2

MỤC LỤC

1 Công cụ quản lý phiên bản là gì ? (Version Control Systems -VCS) 2

2 Một vài công cụ phổ biến trong công cụ quản lý phiên bản phần mềm: 2

2023

Trang 3

I GIỚI THIỆU

1 Công cụ quản lý phiên bản là gì ? (Version Control Systems -VCS)

Là một phần mềm giúp quản lý lịch sử của các tập tin, dự án và các thay đổiđược thực hiện trên chúng Công cụ này cho phép người dùng theo dõi và kiểmsoát các thay đổi trong dự án phần mềm hoặc tài liệu, đồng thời lưu giữ các phiênbản trước đó để có thể phục hồi nếu cần thiết

Công cụ quản lý phiên bản đóng vai trò rất quan trọng trong phát triển phầnmềm và các dự án lớn khác, giúp tăng tính đồng bộ, quản lý thay đổi, giảm rủi rokhi phát triển và duy trì sản phẩm

2 Một vài công cụ phổ biến trong công cụ quản lý phiên bản phần mềm:

a Git

Git là một hệ thống quản lý phiên bản phân tán được phát triển bởi LinusTorvalds vào năm 2005 Git được sử dụng để quản lý lịch sử thay đổi của mãnguồn trong một dự án phần mềm Nó cho phép các nhà phát triển làm việc trêncùng một mã nguồn và theo dõi những thay đổi một cách rõ ràng

Git cung cấp một số lệnh dòng lệnh để quản lý phiên bản, tuy nhiên cũng cónhiều giao diện đồ họa (GUI) cho phép sử dụng Git một cách trực quan và dễdàng hơn Một số ví dụ về các công cụ GUI cho Git bao gồm GitKraken,SourceTree, TortoiseGit, và GitHub Desktop

b Concurrent Versions System (CVS)

Phần mềm Concurrent Versions System (CVS) là một hệ thống quản lýphiên bản mã nguồn mở được phát triển để hỗ trợ phát triển phần mềm đa ngườidùng CVS được tạo ra bởi Dick Grune và dành cho hệ điều hành Unix

CVS cho phép nhiều người dùng cùng làm việc trên một dự án phần mềm

và quản lý các phiên bản khác nhau của mã nguồn Nó cho phép các lập trìnhviên có thể làm việc cùng nhau trên cùng một tệp trong khi tránh các xung độttrong quá trình đóng gói các thay đổi của họ Các tệp của dự án được lưu trữtrong một kho lưu trữ trung tâm, và các lập trình viên có thể truy cập vào chúngqua một giao diện dòng lệnh hoặc các công cụ quản lý phiên bản đồ họa

CVS có thể quản lý các tệp văn bản, mã nguồn, hình ảnh và các tài nguyênkhác của dự án Nó cho phép người dùng đồng bộ hóa các thay đổi của mình với

Trang 4

phiên bản mới nhất của mã nguồn, tạo các nhánh để phát triển song song các tínhnăng mới và hợp nhất các thay đổi vào phiên bản chính của dự án.

Mặc dù CVS vẫn được sử dụng trong một số dự án phần mềm, nhưng hiệnnay nó đã được thay thế bởi các hệ thống quản lý phiên bản khác như Git, SVN,Mercurial, và Perforce

c Apache Subversion (SVN)

Apache Subversion (thường được gọi là SVN) là một hệ thống quản lýphiên bản mã nguồn mở, được phát triển bởi Apache Software Foundation.Subversion được sử dụng để quản lý, theo dõi và kiểm soát các phiên bản của mãnguồn trong các dự án phát triển phần mềm

Subversion được viết bằng ngôn ngữ C và có sẵn trên nhiều nền tảng, baogồm Windows, macOS, Linux và các hệ điều hành khác Subversion cũng có thểtích hợp với nhiều công cụ phát triển phần mềm khác nhau, bao gồm các trìnhbiên tập mã nguồn và các trình quản lý dự án

II Công cụ quản lý phiên bản Git

1 Git là gì?

Git là phần mềm quản lý mã nguồn phân tán được phát triển bởi Linus Torvaldsvào năm 2005, ban đầu dành cho việc phát triển nhân Linux Hiện nay, Git trở thànhmột trong các phần mềm quản lý mã nguồn phổ biến nhất

2 Cách git hoạt động

Hình ảnh mô tả các hành động tương ứng khi các thành phần trong Git làm việc với

nhau.

3

Trang 5

Để lưu trữ được lịch sử thay đổi của các tập tin và hỗ trợ đồng thời nhiều thànhviên cùng làm việc trên cùng một dự án (ví dụ cả một team cùng code trên một sourcecode) Git tạo ra một kho lưu trữ từ xa (remote repository), đây là repository chung,các thành viên trong dự án sẽ nhân bản (clone) repository này về máy tính cá nhân đểlàm việc trên đó Repository trên máy tính cá nhân của mỗi thành viên được gọi là kholưu trữ cục bộ (local repository).

3 Một số khái niệm liên quan đến Git

a Remote: Là phía máy chủ Git, source code của dự án sẽ được lưu trữ tại

đây Các thành viên khi làm việc sẽ clone source về máy và phát triển cácchức năng độc lập Sau khi hoàn thành các chức năng các thành viên sẽtiến hành đẩy (push) code lên remote repository

b Local: Phía client (máy vi tính của bạn), source code sẽ được clone từ

remote repository Trong quá trình làm việc phần lớn là bạn sẽ thao tác tạiđây Thực chất repository này không khác gì so với remote repository (gọi

là remote vì repository này ở xa chúng ta), các khái niệm được đề cậptrong hình ảnh như "Working directory", "Staging area", "Repository" tồntại ở cả 2 phía remote và local

c git add: Lệnh di chuyển các file từ "Working directory" tới "Staging

area"

d git commit: Lệnh di chuyển các file từ "Staging area" tới "Repository".

e git checkout: Lệnh chuyển tới một nhánh (branch) khác trong

"Repository" (mỗi repository có thể tạo ra nhiều nhánh nhỏ bên trong)

f git merge: Lệnh hợp nhất code từ nhánh này qua nhánh khác.

g git push: Lệnh đẩy code từ Local "Repository" tới Remote "Repository".

h git pull: Lệnh lấy code từ Remote "Repository" về Local "Repository".

4 Lợi ích của Git mang đến cho lập trình viên

a Quản lý phiên bản dễ dàng: Git giúp lập trình viên dễ dàng quản lý

phiên bản của mã nguồn bằng cách lưu trữ các phiên bản của mã nguồntrong kho và cho phép truy cập đến bất kỳ phiên bản nào trong kho

b Phát triển độc lập: Với Git, lập trình viên có thể tạo nhiều nhánh để

phát triển tính năng khác nhau và độc lập với nhau Điều này giúp họphát triển dự án một cách hiệu quả hơn và tránh xung đột khi cùng làmviệc trên cùng một tệp

c Hợp nhất dễ dàng: Git cho phép lập trình viên hợp nhất các thay đổi từ

các nhánh khác nhau một cách dễ dàng và nhanh chóng

Trang 6

d Theo dõi thay đổi: Git cho phép lập trình viên theo dõi các thay đổi

trong mã nguồn và kiểm tra lịch sử của các phiên bản Điều này giúp họphát hiện và khắc phục sự cố một cách nhanh chóng

e Hỗ trợ đa nền tảng: Git hoạt động trên nhiều nền tảng khác nhau, bao

gồm Windows, macOS và Linux, giúp lập trình viên có thể làm việc trênnhiều máy tính và hệ điều hành khác nhau

f Hợp tác dễ dàng: Với Git, các lập trình viên có thể dễ dàng hợp tác với

nhau trên cùng một dự án một cách hiệu quả hơn Họ có thể chia sẻ vàcập nhật các thay đổi của mình và đối tác của họ có thể dễ dàng kiểm tra

và hợp nhất các thay đổi đó

III Hướng dẫn cài đặt và sử dụng

1 Hướng dẫn cài đặt GIT

Bước 1: Tải xuống Git Bạn có thể tải xuống Git, từ trang chủ của Git:

https://git-scm.com/downloads

Lựa chọn phiên bản phù hợp với cấu hình của máy tính

5

Trang 7

Bước 2: Thực hiện các bước cài đặt

Bước 3: Tiến hành cài đặt

Trang 8

Bước 4: Tiếp tục cài đặt theo mặc định và có một số tùy chọn nâng cao theo

nhu cầu cá nhân

Tùy chọn IDE theo thói quen cá nhân đề xuất sử dụng (Visual Studio Code)

Bước 5: Cấu hình tên cho nhánh khi cài đặt

Sử dụng nhánh mặc định hoặc tự đặt tên nhánh

7

Trang 9

● Chỉ sử dụng Git từ Git Bash là phương án an toàn nhất, bởi vì nó không làmthay đổi gì cả trong môi trường PATH của bạn Tuy nhiên, bạn chỉ có thể sửdụng các công cụ dòng lệnh Git từ Git Bash

● (Khuyến nghị) Sử dụng Git từ Git Bash và phần mềm của bên thứ ba là phương

án được khuyến nghị Phương án này chỉ thêm một số trình bao bọc Git tốithiểu vào PATH của bạn để tránh gây rối trong môi trường của bạn bằng cáccông cụ Unix tùy chọn Bạn sẽ có thể sử dụng Git từ Git Bash, CommandPrompt và Window PowerShell cũng như bất kỳ phần mềm bên thứ ba nàođang tìm kiếm Git trong PATH

● Sử dụng Git và các công cụ Unix tùy chọn từ Dấu nhắc Lệnh là phương ánkhác Phương án này sẽ thêm cả Git và các công cụ Unix tùy chọn vào PATHcủa bạn Tuy nhiên, cần lưu ý rằng thao tác này có thể ghi đè lên các công cụcủa Windows như "tìm" và "sắp xếp" Vì vậy, chỉ nên sử dụng phương án nàynếu bạn hiểu rõ ý nghĩa

Trang 11

● Sử dụng MinTTY - đây là thiết bị đầu cuối mặc định của MSYS2 Khi sử dụngMinTTY, Git Bash sẽ có một cửa sổ thiết bị đầu cuối có thể thay đổi kích thước

và hỗ trợ phông chữ Unicode Tuy nhiên, các chương trình bảng điều khiểnWindows như Python tương tác phải được khởi chạy thông qua `winpty để hoạtđộng trong MinTTY

● Sử dụng cửa sổ bảng điều khiển mặc định của Windows - Git sẽ sử dụng cửa sổgiao diện điều khiển mặc định của Windows ("cmd.exe") Điều này cho phéphoạt động với các chương trình giao diện điều khiển Win32 như Python hoặc

Trang 12

Windows có một số hạn chế, bao gồm cuộn lùi mặc định hạn chế và không thểthay đổi kích thước tự do Nếu muốn hiển thị chính xác các ký tự không phảiASCII, bạn cần định cấu hình phông chữ Unicode cho cửa sổ này Ngoài ra,trước Windows 10, cửa sổ này chỉ hỗ trợ lựa chọn văn bản hình chữ nhật.

11

Trang 13

Chọn “Tự động chạy trình theo dõi hệ thống tệp tích hợp, để tăng tốc các hoạt động phổ biến như `git status`, `git add`, `git commit`, v.v trong các

worktree chứa nhiều tệp.”

Trang 14

Chờ git đang được cài đặt

Cài đặt thành công.

Ta sử dụng lệnh git -v để kiểm tra xem git đã thật sự được cài đặt chưa.

13

Trang 15

2 Hướng dẫn sử dụng GIT

a Cấu hình Git:

Trước tiên chúng ta cần cấu hình tên người dùng và email, thông tin này được

sử dụng để đánh dấu các thay đổi mà bạn đã thực hiện với dự án Điều này giúpGit quản lý chặt chẽ hơn khi có nhiều thành viên cùng làm việc trong một dựán

Sử dụng lệnh git config –global user.name “YOUR_NAME” và

git config –global user.email “YOUR_EMAIL” để cấu hình tên ngườidùng và địa chỉ email

Sử dụng lệnh git config user.name và git config user.email, đểkiểm tra xem tên và email đã đúng ý chưa

Trang 16

b Tạo một kho lưu trữ:

Giả sử chúng ta có một phần mềm cần được chỉnh sửa và cập nhật phiên bản mới từ xa

Mở terminal của thư mục phần mềm cần chỉnh sửa và cập nhật

Trước tiên, ta tạo kho lưu trữ bằng lệnh git init

Sau khi khởi tạo kho lưu trữ, sử dụng lệnh git status để kiểm tra trạng thái các

dữ liệu chưa được cập nhật vào kho (các dữ liệu mới, các dữ liệu được thay đổi, )

Ta sử dụng lệnh git add để thêm tất cả các dữ liệu đã thay đổi từ "Workingdirectory" tới "Stagingarea" (Lúc này dữ liệu đã sẵn sàng “Commit”)

15

Trang 17

Lệnh commit để di chuyển files từ Staging Area tới vùng Local Repository trong kho lưu trữ của bạn Dữ liệu nằm tại vùng này sẽ sẵn sàng để tải lên kho lưu trữ từ xa (remote repository).

Trang 18

Ta sử dụng lệnh git log để kiểm tra lịch sử các hành động cập nhật

Khi đó, tất các dữ liệu đã được cập nhật chưa trở thành nguồn mở Do đó, cácDeveloper khác thực hiện dự án này chưa được kết nối với phiên bản mới này Vì vậy,

ta cần sử dụng GITHUB để tạo không gian mạng hay kho dữ liệu trực tuyến cho dự ánphần mềm

Khởi tạo “Remote repository” qua nền tảng GITHUB https://github.com/

17

Trang 19

Một số thao tác cơ bản của GITHUB để tạo 1 remote repository.

Lệnh git remote add origin <link> để đẩy dữ liệu từ “Local repository”đến “Remote repository

Trong Git, lệnh git push được sử dụng để đẩy các thay đổi từ local repository lênremote repository Khi sử dụng lệnh git push lần đầu tiên, ta có thể sử dụng tham số -u

để thiết lập một upstream branch cho branch đang làm việc hiện tại

Nếu ta thiết lập upstream branch bằng cách sử dụng tham số -u, Git sẽ lưu trữ thông tin

về upstream branch đó, giúp ta tiện theo dõi các thay đổi và thực hiện đẩy các thay đổitrong tương lai

Giả sử ta có Developer 2 trong dự án (hoặc nhiều người hơn nữa), ta sử dụng lệnh git

Trang 20

bạn Việc sao chép này bao gồm tất cả các lịch sử phiên bản, các nhánh, các tag và cácfile trong repository.)

Bước 1: Đầu tiên, ta cấp quyền truy cập repository của dự án, ta truy cập

Settings -> Collaborators -> Manage access -> Add People

Ta thêm Developer dựa trên ID GITHUB của họ

Bước 2: Developer 2 muốn có một phiên bản cập nhật mới (Thêm Style.css), ta

thực hiện các bước sau:

Ta gọi lệnh git clone <url dự án> thì toàn bộ dữ liệu của dự án sẽ

được tải về vào máy tính để ta thao tác lên dự án (chỉnh sửa, thêm, xóa…)

19

Trang 21

Bước 3: Giả sử Developer 2 đã thêm file style.css vào dự án, cần đẩy

phiên bản cập nhật mới này lên repository chung trên GITHUB , ta gọi lệnh git add để đẩy toàn bộ dữ liệu có trong máy lên repository

Bước 4: Ta tiếp tục “commit” cho lần cập nhật này, Developer 2 chỉ thêm file

style.css ta đặt tên cho hành động cập nhật là “Add style.css” bằng lệnh gitcommit -m“Add style.css”

Bước 5: Cuối cùng, ta đẩy phiên bản cập nhật mới này lên repository chung

bằng lệnh git push -u origin main

Ta đã thành công cập nhật phiên bản mới thành công lên github

Ngày đăng: 31/03/2024, 15:00

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w