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 1 0
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

Đ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

Trang 1

TRƯỜNG ĐẠI HỌC CẦN THƠ

TRƯỜNG CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNGKHOA 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ểm soá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ên bả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ần mề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 ro khi 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 Linus Torvalds 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ên cù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ười dù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ình viê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 đột trong 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úng qua 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ên khá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ính nă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ện nay 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, bao gồ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ình biê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 Torvalds vào năm 2005, ban đầu dành cho việc phát triển nhân Linux Hiện nay, Git trở thành mộ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ớinhau.

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ành viê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 source code) 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à kho lư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ác chứ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ập trong hình ảnh như "Working directory", "Staging area", "Repository" tồn tạ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

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ồn trong 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àm việ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ên nhiề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:

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àm thay đổ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ối thiể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ác công cụ Unix tùy chọn Bạn sẽ có thể sử dụng Git từ Git Bash, Command Prompt 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 án khác Phương án này sẽ thêm cả Git và các công cụ Unix tùy chọn vào PATH củ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ày nế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ụng MinTTY, 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ển Windows 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ép hoạ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ải ASCII, 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úp Git 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ười dù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ừ "Working directory" 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ác Developer 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ự án phầ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ên remote 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 đổi trong 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ác file 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 git commit -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