You are on page 1of 3

1.

git init khởi tạo 1 repository dưới local


2. git status cho biết trang thái các file
3. git add . đưa các file vào trạng thái cb lưu
3.1: git reset để đưa các file quay trở lại
4. commit tiến hành ghi những thay đổi vào trong kho

5. git log : để xem các commit


6. git log --oneline : hiển thị mỗi commit trên 1 dòng
7. git checkout {id commit để quay lại thời điểm lúc commit đó || master là quay
lại lúc đang làm}
8. git checkout -b {tên branch}
9. git merge {branch name}
10. git branch -d {branch name} : để xóa 1 branch

-thư mục đang làm việc thì sẽ được chuyển sang stagin area bằng lệnh staus và
để lưu thành đổi bằng lệnh git commit -m""
thư mục đang làm việc ------------staging area ----------------commited
- để quay lại trang thái đang làm việc từ staging dùng git reset head

-để xem các commit trong respo thì dùng lệnh git log

-- muốn đẩy lên repository có sẵn thì làm theo hd cùa git ...

--------------conflict -------------------

:wq khi k gõ dc tiếp

-----------------------------------------------local-
remote--------------------------------------------
git push -u origin { tên branch của mình } để đưa branch này có trên remote
git fetch origin : khi muốn lấy cide từ 1 branch trên git về thì đầ tiên dùng lệnh
này
git checkout-b {branch name} origin/...
-----------------------------------------------------------------------------------
-------------

4. git branch
+ branch : nhánh giúp ta làm việc của riêng mình + giúp làm việc nhóm hiệu quả ,
ban đầu khi được giao 1 nhiệm vụ thì t sẽ tạo 1 branch từ branch chính ,
lúc này những commit của mình chỉ thực hiện trên branch trên nhánh đó thôi không
ảnh hưởng đến các branch khác
chỉ thay đổi khi ta hoianf thành nhiem vụ và gộp chung công việc vào main

-git branch : show các branch

- git checkout -b tên: muốn tạo ra 1 branch mới từ branch main


- git restore --stagaed tên file để đưa file từ trang thái staging area về trạng
thái đang làm việc
-git checkout tên : để quay lại branch nào đó (-b là tạo ra 1 branch)
-git merge tên branch : để thêm commit ở nhánh con
-để checkout 1 commit :
+ git checkout hash : lúc này sẽ chuyển acc về đúng trạng thái lúc commit đó

git rebase ,
--------------------------git-------------------
git commit -m ->> git checkout deverlop .... ->> git pull ->> checkout ->> nhánh
mình làm ->> rebase deverlop ( ko co conflict ->> push)

gộp commit :

1. git log --oneline

2. git rabase -i HEAD ~N (n là số lượng commit gộp)


3. giữ 1 từ pick đầu tiên và thay các từ pick còn lại thành s và lưu lại ( nhấn i
để sửa và esc sau đó nhấn :wq để lưu lại)
4. xóa các nội dung mô tả cũ và thay đổi bằng nội dung mô tả mow2is
(để xóa chỉ cần thêm # ở trước hoặc xóa hết chữ dòng mô tả )
5. git log --oneline để kiểm tra lại
6 git push --force để đẩy đến git

-------------------------------------------chery pick
------------------------------------------------------
-Đang làm 1 chức năng quản lý user (CRUD) . tại branch manage-users khách hàng cần
release gấp chức năng show user .
khi này nếu dùng rebase/ git merge thì sẽ thừa bởi vì :
Đối với git rebase/merged nó sẽ làm như thế nào? Vì đối với git merge, Git sẽ thực
hiện áp dụng các thay đổi của
commit mới nhất vào nhánh mình muốn merge. Rõ hơn chúng ta xem ví dụ và mô tả cụ
thể:
Mình cần merge các thay đổi có trong branch feature-A và brach master

// Tại branch feature-A


git log --oneline
-> ...
...
-> commit hash: c1
fisnish C1
-> commit hash: c2
fisnish C2
-> commit hash: c3
fisnish C3

// Tại brach master


git merge feature-A

-Với lệnh này, Git sẽ lấy toàn bộ thay đổi trong commit C3 của brach feature-A đưa
vào branch master. Tức là,
git merge và git rebase thường được áp dụng đưa thay đổi của nhìu commit lên 1
nhánh khác. Như vậy,
rõ ràng git merge hay git rebase không thể giải quyết được.

Để giải quyết 2 trường hợp trên, chúng ta sẽ nghe đến 1 kỹ thuật của git support là
git cherry-pick

Git cherry-pick
-Là một cách để checkout 1 commit bất kỳ tại 1 branch được chỉ định về branch hiện
tại. Hay chính là
git cherry-pick sẽ bốc thay đổi của 1 commit trên 1 nhánh nào đó áp dụng vào nhánh
hiện tại.

--------------------------------------------Slova
-----------------------------------------------------
-đang ở dev : git pull origin HEAD
+git checkout -b newbranch
- khi muốn đẩy code lên git stash ('lưu code thay đổi ở local ')
-git pull origin dev
- git stash pop ,
- conflich ... nếu có .
-git status ..
- nếu có pack -lock json ... discard

You might also like