02. Quản lý source code và làm việc nhóm với GIT

Trung Hiếu Trần
6 min readApr 4, 2018

--

Vài thông tin về GIT

  • Là công cụ giúp quản lý source code được tổ chức theo dạng dữ liệu phân tán (distributed)
  • Giúp theo đồng bộ source code của nhóm làm việc chung với nhau lên 1 server ( remote)
  • Hỗ trợ các thao tác kiểm tra source code của dev trong quá trình làm việc (Diff, Check modifications, ShowLog, …)

Sử dụng GIT vào dự án như thế nào??

cơ chế hoạt động của GIT

Mô hình hoạt động của GIT cần nắm một số khái niệm:

  • Repository (repo): là nơi chứa source code.
  • Remote: server online.
  • Local: server local trên máy.
  • Working copy: nơi làm việc trực tiếp trên máy local.

Chúng ta tổ quản lý source code trên máy sẽ được lưu trữ trong local repo, Khi có internet chúng ta có thể “đồng bộ” local repo lên online, tức là sync lên remote repo.

Khi trong team hoàn thành các tính năng và đã sync lên cho server online ( remote repo) thông qua các thao tác ( commit & push).

Thao tác cơ bản của 1 dev khi hoàn thành 1 tính năng:năng:

  • Commit: Lưu các thay đổi từ thư mục đang làm việc (working coppy) vào server local (local repo)
  • Push: Cập nhật các thay đổi từ server local ở máy(local repo) lên server online (remote repo)

Các thành viên trong team cần lấy về sử dụng cần làm các thao tác:

  • Fetch: Để “đồng bộ” mọi thứ thay đổi mới nhất từ server online (remote repo) về server local (local repo) chúng ta sử dụng lệnh fetch ( git fetch)
  • Pull: Sau đó để “áp dụng” các thay đổi đó vào source code đang sử dụng.tức là cập nhật từ server local (local repo) vào thư mục đang làm việc (working copy) (git pull)

Các thao tác sử dụng cho GIT

Lệnh

Chức năng

Clone

  • Lấy source từ server về server local của máy (local repo).

pull

  • Cập nhập source từ server local qua working copy.

commit

  • Thêm các thay đổi từ working copy vào sever local.

push

  • Cập nhập các thay đôi từ server local lên server online (remote repo)

Checkout

  • Đổi từ branch này sang branch khác.
  • Cập nhật tới 1 reversion (Mã Hash)

Sử dụng GIT vào triển khai dự án như thế nào??

Để sử dụng cho quá trình triển khai dự án chúng ta sử dụng khái niệm branch của GIT.

branch: được hiểu là 1 nhánh của GIT, và được dev tách ra khi cần thiết. Mục đích để đảm bảo độ ổn định của source code tại 1 thời điểm và tránh việc sử dụng(apply) các code không cần thiết vào.

Đối vs GIT mỗi repo đều thuộc 1 nhánh nhất định ( mặc định sẽ có nhánh: master remote)

1. Tạo dự án với GITHUB

Tạo tài khoản và đăng nhập vào github: https://github.com

Đặt tên và mô tả cho dự án

Chọn Create repository, sẽ được 1 repo remote để chứa dự án

Link GIT của dự án sẽ được tạo theo tên của repo lúc đầu tạo dự án

Ex: https://github.com/HieuTranTrung1204/ittc_firstGame.git

Chúng ta có thể lấy về máy local để bắt đầu code.

GIT đã có sẵn một số lệnh cơ bản như hình.

Sử dụng GIT cho thư mục mới

echo “# ittc_firstGame” >> README.md

Lệnh khởi tạo 1 file README.md với nội dung #ittc_first_Game

git init

Lệnh khởi tạo sử dụng GIT cho thư mục hiện tại

git add README.md

Thêm file README.md vào cho GIT quản lý (working copy)

git commit -m “first commit”

Thêm vào server local (repo local)

git remote add origin https://github.com/HieuTranTrung1204/ittc_firstGame.git

Kết nối server local vào server online (remote)

(Lúc này sẽ yêu cầu nhập username và pass của GITHUB account:

Username for ‘https://github.com': hieu.trantrung1204@icloud.com

Password for ‘https://hieu.trantrung1204@icloud.com@github.com':

Counting objects: 3, done.

Writing objects: 100% (3/3), 243 bytes | 243.00 KiB/s, done.

Total 3 (delta 0), reused 0 (delta 0)

To https://github.com/HieuTranTrung1204/ittc_firstGame.git

  • [new branch] master -> master
  • Branch ‘master’ set up to track remote branch ‘master’ from ‘origin’.
  • )

Kiểm tra lại log trên web của Github và file vừa commit

Sử dụng GIT cho thư mục đã có

git remote add origin https://github.com/HieuTranTrung1204/ittc_firstGame.git

git push -u origin master

2. Thêm thành viên vào team để làm việc nhóm

Để thêm thành viên vào Setting như hình vào nhập vào email hoặc username Github

3. Commit

Làm việc với GIT, sau khi đã clone source về (Thư mục đã hiểu GIT)

Để đẩy code sau khi hoàn thành, chúng ta sử dụng thao tác commit.

Chúng ta có ví dụ Helloworld với Javascript. Xuất ra màn hình web thông báo có chứa nội dung “Hello World”

Code:

<!DOCTYPE HTML>

<html>

<body>

<p>Before the script...</p>

<script>

alert( 'Hello, world!' );

</script>

<p>...After the script.</p>

</body>

</html>

Bước 1: Add, Chọn File và vào ToitoiGit chọn Add

Thêm thành công file vào GIT

Bước 2: Commit

Chuột phải vào thư mục chọn commit

Bước 3: Nhập log để commit

Bước 4: Chọn Push để lưu lên server online (repo remote)

Chọn branch để push (mặc định sẽ chọn master)

Nhập account Github để push source lên server

Push thành công

4. Pull

Để lấy những thay đổi mới nhất của team đã commit lên server online , chúng ta sử dụng lệnh pull

Chuột phải vào thư mục chọn Pull để cập nhập các thay đổi mới nhất từ server

Chọn remote để lấy những thay đổi mới nhất về

Các thay đổi đã được cập nhật thành công

5. Show Log

Xem các thay đổi của source

Sử dụng ShowLog để xem lịch sử thay đổi source code và log

Xem log trên web: https://github.com/HieuTranTrung1204/ittc_firstGame/commits/master

Kết

Ngoài việc GIT giúp làm việc teamwork thì sử dụng Git sẽ giúp quản lý tốt hơn source code cũng như tiến độ làm việc của dự án, tránh rủi ro xãy ra trong quá trình làm việc.

Phần 3. Tạo Game đầu tiên với CocosCreator HelloWorld Count Time

--

--