- Back to Home »
- Tools »
- [Git] Hệ thống quản lý source code (Part 1)
Sunday, May 24, 2015
Khi làm việc với một project có một điều là bạn không thể nhớ hết được ngày nào bạn làm cái gì, sự khác nhau giữa các version ở những đâu, làm thế nào để các coder ở xa nhau có thể làm chung một project, vv... thế nên một yêu cầu tất yếu là bạn cần một công cụ quản lý sao cho nó có thể làm tất cả các việc trên cho bạn.
Git là một hệ thống quản lý source code đáp ứng yêu được các cầu đó. Git được phân phối trên tất cả các hệ điều hành, trong thế giới Linux, nó là duy nhất.
Ngoài Git ra thì còn một số hệ thống quản lý source code khác bạn nên biết qua như CVS (Concurrent Versions System) và SVN (SubVersioN), chúng được dùng nhiều trên nền tảng Windows.
2. Mô hình hoạt động
Git được chia làm 2 phần gọi là Client và Server, Client chính là máy tính của bạn được cài đặt phần mềm git client, còn Server là một máy tính khác được cài git server, chúng tương tác hai chiều thông qua các API.
Mô hình hoạt động là môt server có nhiều client (mỗi programmer là một client).
Cách thức hoạt động như sau:
+ Admin của git server tạo một kho để chứa source code project của bạn gọi là Remote repository
+ Trên client, bạn cũng tạo một kho để chứa source code gọi là Local repository
+ Bạn tạo ra các thư mục, các file source code, các ghi nhớ cho project, ...
+ Bạn đẩy (push) tất cả project lên Remote repository
+ Ở một client khác từ bây giờ có thể lấy về (pull) tất cả project
3. Git client
3.1 Install
yum install git-all3.2 Initial project
Toàn bộ quá trình sau được thực hiện bằng command trên Terminal
cd <path to project folder>
git init
touch README.md
=> tạo readme file để giới thiệu project, có thể ko cần cũng được
git add ./
=> add tất cả các file hiện tại trong project vào danh sách tracking của git,
git add *.h, git add *.c, git add *.cpp add tất cả các file .h, .c và .cpp vào project
git commit -am "init project, add all source code"
=> commit là add thêm ghi chú
Sau khi init xong bạn tạo ra các file source code, modify, delete bình thường, mỗi lần muốn ghi lại một ghi chú thì bạn thực hiện lặp lại hai lệnh git add và git commit như trên.
Với trường hợp trên git server đã có sẵn source code và bạn muốn lấy nó về để tiếp tục phát triển các version thì thực hiện các lệnh như sau:
cd <new folder>
git clone https://github.com/eslinux/Utils.git
=> Utils là project đã có trên git server, sau lệnh này sẽ có thư mục cùng tên Utils nằm trong trư mục cha <new folder>
git pull
=> update from remote server
3.3 Một số lệnh thao tác
git log
=> xem lại các commit
git status
=> list current status about untrack, modify, delete ...
git rm -f filename
=> delete file on disk
git rm --cached filename
=> remove file from current tracking
git checkout
=> the similar to 'git status'
git ls-files
=> list all file in current folder and subfolder
git diff oldkey newkey
=> trace difference on screen, red text are old content, blue text are new content. oldkey và newkey có được nhờ lệnh "git log", mỗi key là ID cho một commit
3.4 Đẩy source code lên git server
Sau khi hoàn thành tương đối một version (hoặc một tính năng nào đó) của project, bạn đẩy source code lên git server bằng các lệnh sau:
git remote add origin https://github.com/eslinux/Utils.git
=> nếu init project bằng "git clone" thì không cần chạy lệnh này
git push -u origin master
Hướng dẫn sử dụng tất cả các lệnh git tại đây và tại đây :D
Xem tiếp Git - Hệ thống quản lý source code (Part 2) .