Вы находитесь на странице: 1из 1

1 Máy local lưu trữ 1 Source code được Clone từ 1 kho chứ

source (Repository), Mỗi thay đổi tại local đc Commit lên


Repository. Thư mục của máy local lưu trữ Source code được
gọi là Working Tree

Cơ chế lưu trữ phiên bản của Git là nó sẽ tạo ra một “ảnh chụp”
Hệ thống quản lý phiên (snapshot ) trên mỗi tập tin và thư mục sau khi commit.
bản phân tán (Distributed
Version Control System – Từ đó nó có thể cho phép bạn tái sử dụng lại một ảnh chụp nào
DVCS) đó mà bạn có thể hiểu đó là một phiên bản (Version)
Local Repository (Kho chứa trên máy cá nhân)

Repository Remote Repository (Kho chứa trên một máy chủ từ xa)
1. Git là gì? Github là gì?
Github chính là một dịch vụ máy chủ repository công cộng

1. Cài Git vào Linux


$ sudo apt-get install git

2. Thiết lập chứng thực cá nhân $ git config --global user.name "AnhTran"
khai báo tên và địa chỉ email vào $ git config --global user.email "kimcuongden171@gmail.com"
1. GIT BASIC trong file cấu hình của Git trên máy

2. Setup & Setting $ cat ~/.gitconfig

kiểm tra thông tin git config --list


TORTOISEGIT The Power of Git – chứng thực
in a Windows Shell
1 Tạo thư mục
local repository
git init tên_folder
2 Đưa các
tập tin về trạng
Tạo local repository thái Tracked
git add tên_file

git commit -m "Comment code"


Là nơi lưu trữ SOURCE 3 Commit
CODE và có thể 1 Tạo New repository
1. Repository là gì? CLONE để làm việc Create trên GitHub
git fetch 2 clone cái kho chứa này
Lệnh này sẽ tự động lấy toàn bộ dữ liệu từ remote repository và gộp
vào cái branch hiện tại bạn đang làm việc. về máy
3 Đưa các tập tin về git clone địa_chỉ
Lệnh này sẽ sao chép toàn bộ dữ liệu trên repository và sao chép luôn các thiết lập git clone Sự khác nhau giữa clone, fetch và pull trạng thái Staging Area
về repository, tức là nó sẽ tự động tạo một master branch trên máy tính của bạn. git add tên_file
Lệnh này chỉ nên sử dụng khi bạn cần tạo mới một Git mới trên máy tính với toàn bộ
Tạo repository trên Github
dữ liệu và thiết lập của một remote repository. git commit ten_file
Lệnh này sẽ lấy toàn bộ dữ liệu từ remote repository nhưng sẽ cho phép git push origin master
bạn gộp thủ công vào một branch nào đó trên thư mục Git ở máy tính. 4 commit lên Github 1. Tạo Branch
git pull

Git
git remote -v Kiểm tra remote repository Solution git branch tên_brand
Tạo một phiên bản thử nghiệm mà không ảnh
fetch (lấy dữ liệu về từ server) hưởng đến các code hiệnCátại
c
bước 2.Checkout Branch git checkout tên_branch
Checkout ở đây nghĩa là bạn truy cập kiểm tra mã
push (gửi dữ liệu lên server) 3. Sơ lược Remote Respository và Origin 2.Local Repository thực nguồn trong branch đó để làm việc đấy
hiện
git remote rename tên_cũ tên_mới $ git branch -d develop
Đổi tên remote là 1 nhánh của REPOSITORY, 3.Xóa branch git merge Ten_branch
mỗi nhánh hoạt động riêng biệt và không ảnh hưởng đến các nhánh Lưu ý là ở branch cần chuyển về đã phải được
1. git remote add tên_remote URL khác commit
4.Merge Branch
lấy dữ liệu từ cái ten_remote kia về 1. đặt tên cho remote vào working tree
2. git remote show ten_branch
chỉ lấy về và lưu vào database của Git trên máy chứ Thêm một remote 3. chọn một cái remote
không được gộp vào repository của bạn branche cần fetch
2. git fetch ten_remote dữ liệu về $ git branch fix_ui
Để gộp vào bạn có thể gõ thêm lệnh git merge ten_remote $ git checkout fix_ui
Kỹ thuật phân nhánh $ git pull inuit gh-pages
Còn nếu bạn muốn nó lấy về trực tiếp mà không cần
2. Brand là gì? $ git commit -m "Commit from fix_ui"
gộp thì sử dụng lệnh git pull tên_remote
Branch tích
Giao thức này nghĩa là bạn kết nối tới một repository Local Repository Làm việc với
hợp 4. commit nó và $ git push ten_origini ten_brand_vua_get_ve
nào đó trên chính máy tính của bạn và URL của giao (Integration remote branch
thức sẽ có dạng /path/repository/. thử push nó
branch) lên repository
Giao thức thông dụng nhất cũng như dễ hiểu nhất, thường được sử dụng nếu bạn dùng Branch Master - Release Products của bạn
Nếu muốn gộp 2 branch
các dịch vụ remote repository như Github hay Assembla, nó sẽ bao gồm định dạng
Các loại giao thức của Remote Repository 5.git merge
http://domain.com/repository.git hoặc https://domain.com/repository.git. HTTP Repository Phân loại
Fix bug & Tính năng mới
Branch chủ
Giao thức này thường được dùng trên các nhu cầu tạo một server repository riêng và kết nối thông qua giao thức SSH. đề (Topic
branch)
Đường dẫn của giao thức này sẽ có dạng là user@server :/path/repository.git. Ở phần cuối serie mình sẽ hướng dẫn bạn cách
tạo một repository server riêng và nó là lựa chọn rất tốt nếu bạn làm việc nhóm mà không cần phụ thuộc vào các dịch vụ như SSH Repository
Github hay Assembla. Là khu vực trung gian giữa local và repository
1. LÀ một khu vực chuẩn bị cho quá trình COMMIT
git add tên_file
Staging Area có trạng thái STAGGED
Bỏ tập tin ra khỏi
Staging Area Step 1. git reset HEAD tên_file

2. TIP Step 2. git commit -a -m "Skipped Staging Are to commit"

Step 1. git commit -m "Lời nhắn"


Step 2. git push origin master
Là tập tin còn lại mà bạn sẽ không muốn làm việc với nó trong Git.
Untracked
Nếu bạn tạo ra hoặc thêm vào một tập tin mới vào trong thư mục làm việc của bạn thì nó sẽ ở trạng thái Untracked

nếu một tập tin ở trạng thái Untracked mà được đưa về Tracked thì nó sẽ nằm ở trạng thái Staged luôn , trừ khi bạn
thay đổi nội dung tập tin này thì nó sẽ đưa về trạng thái Modified và nó không thể commit trừ khi bạn gõ lệnh git add cho nó
2. Điều kiện
Modified (đã chỉnh sửa)
3. Understading Commit và Là tập tin đã được đánh dấu theo dõi trong Git để bạn
Staging Area làm việc với nó
Unmodified (chưa chỉnh sửa gì)
Tracked
Staged (đã sẵn sàng để commit)
git rm -f tên_file
Chuyển tập tin từ
Untracked về Tracked
COMMIT
1. git rm -f tên_file
xóa hẳn ở Working Tree
1. git rm -r --cached Đưa file vào trạng thái trang thái xóa, không xóa trong ổ
File-or-FolderName cứng

4. TIPS Tương đương với lệnh rm file-or-4der Name


Xóa folder/directory or
file từ git repository 2. git commit -m tên_file_or_4der "Removed folder from repository"
3. git push origin master

git log -p hiển thị chi tiết của mỗi lần


commit Nếu log quá dài, dùng phím mũi tên lên xuống để đọc tiếp

ấn Ctrl + Z để thoát
Xem log
Hoặc nếu bạn muốn chỉ muốn xem 1 lần commit gần nhất thì thêm tham số -1 vào.
%H – Commit hash
--since, --after: Xem các lần commit kể từ ngày nhất định. %h – Abbreviated commit hash
--until: Xem các lần commit trước từ ngày nhất định. %T – Tree hash
--author: Xem các lần commit của một người nào đó. %t – Abbreviated tree hash
--grep: Lọc các chuỗi trong log và in ra. %P – Parent hashes
Các %tag phải dược đặt trong cặp dấu ngoặc kép và %p – Abbreviated parent hashes
3. COMMIT & Lịch sử COMMIT
Tham số --pretty $ git log --pretty="%tag" bạn có thể sử dụng nhiều %tag khác nhau. %an – Author name
(Git Log ) %ae – Author e-mail
%ad – Author date (format respects the –date=option)
%ar – Author date, relative
git config --global alias.lg "log --color --graph --
%cn – Committer name
pretty=format:'%Cred%h%Creset -
%ce – Committer email
%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold
%cd – Committer date
Lọc log với --pretty blue)<%an>%Creset' --abbrev-commit"
%cr – Committer date, relative
Xem LOG đẹp hơn %s – Subject
Coppy dòng trên sau đó gõ git lg để xem

git commit --amend -m "Comments here"


xóa bỏ lần commit trước và cần undo để commit lại
Undo Commit

Вам также может понравиться