Một số câu lệnh Git phổ biến
Git là gì ?
Theo
wiki: 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.
Github là gì ?
GitHub là một dịch vụ
cung cấp kho lưu trữ mã nguồn Git dựa trên nền web cho các dự án phát triển
phần mềm. GitHub cung cấp cả phiên bản trả tiền lẫn miễn phí cho các tài khoản.
Các dự án mã nguồn mở sẽ được cung cấp kho lưu trữ miễn phí.
Đưa source code lên
github
Để khởi tạo git repo
trong thư mục project ta dùng lệnh:
git init
Kiểm tra trạng thái git:
git status
Tiến hành add các file
vào branch :
git add *
Lệnh để commit:
git commit -m "nội
dung message commit"
commit đè lên commit
trước:
git commit -amend
clone 1 project về máy:
git clone [url]
xem danh sách các
commit:
git log -p < số danh
sách commit muốn hiển thị >
Untracked: file chưa
được add vào git
Staged: file đã được add
vào git
Unmodified: file đã được
commit
Modified: file đã được
chỉnh sửa sau khi commit
Commit là thao tác báo cho
hệ thống biết bạn muốn lưu lại trạng thái hiện hành, ghi nhận lại lịch sử các
xử lý như đã thêm, xóa, cập nhật các file hay thư mục nào đó trên repository.
Khi thực hiện commit, trong repository sẽ ghi lại sự khác biệt
từ lần commit trước với trạng thái hiện tại. Các commit ghi nối tiếp với nhau
theo thứ tự thời gian do đó chỉ cần theo vết các commit thì có thể biết được
lịch sử thay đổi trong quá khứ.
Khi bạn thực hiện commit, hệ thống đều yêu cầu bạn phải nhập vào
commit message để ghi chú tóm tắt là trong lần commit này là bạn đã thực hiện
những thay đổi nào, có ý nghĩa thế nào,…
Kết nối repo local tới
git:
git remote add origin
<link repo trên github>
Đẩy source code lên git:
git push -u origin
master
Lệnh push được sử dụng
để đưa nội dung kho lưu trữ cục bộ lên server. Push là cách bạn chuyển giao các
commit từ kho lưu trữ cục bộ của bạn lên server.
Một số câu lệnh cơ bản
của git:
Tạo branch cho git bằng
lệnh:
git branch
<tên-branch>
Khi tạo một repository
mặc định sẽ có một nhánh chính tên là master, đây là branch chứa toàn bộ các mã
nguồn chính trong repository. Tạo nhiều branch giúp cho thay đổi project không
bị ảnh hưởng tới branch còn lại. Khi hoàn chỉnh các tính năng thì có thể gộp
lại thành 1 branch duy nhất.Tất cả các branch đều được hệ thống lưu lại lịch sử
các lần commit trên nhánh và bạn hoàn toàn quay lại mốc commit nào mà mình
muốn.
Chuyển đổi branch:
Git checkout
<tên-branch>
Tạo và chuyển đổi branch
làm việc:
git checkout -b
<tên-nhánh>
Gộp 2 branch :
git merge
<tên-branch>
hoặc
git rebase
<tên-branch>
Merge sẽ tạo ra commit
mới là kết hợp từ 2 commit cuối cùng của 2 branch cần gộp vào với nhau.
Rebase sẽ gắn commit vào
với nhánh gốc nên các commit sẽ được đăng kí theo thứ tự gắn vào.
Git pull và git fetch:
Khi muốn cập nhật các
thay đổi từ trên remote server về local repository ta cũng có hai cách để thực
hiện điều này như sau:
git pull
<tên-remote> <tên-remote-branch>
git fetch
<tên-remote> <tên-remote-branch>
pull sẽ tiến hành
kéo các thay đổi từ trên remote server về local của chúng ta đồng thời tiến
hành merge các thay đổi.
Đối với lệnh fetch, các
thay đổi từ remote server sẽ được kéo về máy nhưng không tự động merge vào
source code và ta có thể thực hiện việc này sau khi đã review lại các thay đổi
đó trước khi tiến hành merge.
Ta có thể hiểu đơn giản:
git pull = git fetch +
git merge
Để Lưu lại trạng thái đang
làm việc trên project khi muốn chuyển branch nhưng không commit:
git
stash
Lấy
lại trạng thái làm việc:
git
stash pop
Xóa
untracked files:
Git
clean -f -d
Một số câu lệnh khác:
Mở trình quản lý GUI của
git: git gui hoặc gitk
So sánh hai nhánh: git
diff <nhánh-nguồn> <nhánh-cần-so-sánh>
Xóa nhánh local: git
branch -d <tên nhánh>
Thêm description cho
nhánh: git branch --edit-description
Merge nhánh phụ
vào nhánh hiện hành: git merge <nhánh-phụ>


Leave a Comment