Introduction
Các bước cần thiết để khởi tạo một folder dùng cho dev
login vào trang https://github.com/
tài khoản lamhung81.i3s@gmail.com/ mật khẩu Lh..2
2.vào trang https://github.com/PX4/Firmware
chọn nhấn vào biểu tượng Fork ở phiá trên bên phải màn hình
Khi này PX4/Firmware sẽ được fork về tài khoản https://github.com/lamhung81i3s
Trên máy tính Linux Ubuntu
tạo folder, ví dụ PX4_i3s
mở terminal mới, cd .../PX4_i3s, clone từ account dùng lệnh
git clone https://github.com/lamhung81i3s/Firmware.git
cd .../PX4_i3s/Firmware, kiểm tra status của folder bằng lệnh git status
cho kết quả,
On branch master
Your branch is up-to-date with 'origin/master'.
List các tag (version) git tag
cho kết quả,
NuttX-6.16
ardrone_flight
fixedwing_stable
stable_manual_flight
...
v1.6.4
v1.6.5
Chuyển sang 1 tag ổn định, ví dụ phiên bản v1.6.5
git checkout tags/v1.6.5
cho kết quả,
Note: checking out 'tags/v1.6.5'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b new_branch_name
HEAD is now at f160743... Join us on Slack README badge
Kiểm tra lại status bằng lệnh git status
cho kết quả,
HEAD detached at v1.6.5
nothing to commit, working directory clean
Tạo một branch mới từ tag này git checkout -b AUV_i3s
cho kết quả,
Switched to a new branch 'AUV_i3s'
Kiểm tra status git status
cho kết quả,
On branch AUV_i3s
nothing to commit, working directory clean
Hiển thị các commit
git log
Quay về trạng thái ngay sau 1 commit nào đó
git checkout <commit>
Hiển thị các branch
git branch
Vẽ đồ thị các nhánh và các commit
git log --all --decorate --oneline --graph
git add
git commit -m "Nội dung cần commit"
Clone một branch đã được tạo từ một account cá nhân của github
Ví dụ trong tài khoản lamhung81 của github, có Folder Firmware clone từ PX4/Firmware
Đầu tiên cần
git clone https://github.com/lamhung81/Firmware.git
sau đó cần hiển thị tất cả các branches
git branch -a
tiếp theo chuyển về AUV_adaptation
git checkout AUV_adaptation
You can get back to the master branch by using:
Pull để lấy các update về (nếu có người khác cùng phát triển) trước khi push các modification của mình lên
git pull origin AUV_adaption
sau đó cần nhập ví dụ account: lamhung81 và mật khẩu
Rồi mới được push
git push origin AUV_adaptation
Tạo 1 folder file và lưu version
Ví dụ cần tạo 1 thư mục có tên là ICSTCC_2017 và có chức năng lưu version
Trên github account, tạo 1 repositoire, có tên ICSTCC_2017
Trên máy tính, trên terminal, vào trong thư mục mà dự định sẽ chứa ICSTCC_2017,
git clone https://github.com/lamhung81i3s/ICSTCC_2017.git
Thay đổi, thêm bớt nội dung bên trong thư mục ICSTCC_2017 vừa được tạo rồi
git add .... các file/ thư mục mới tạo
git commit -m "........"
Để push, vì là ở nhánh master, do đó cần
git push -u origin master
Chú ý khi dùng git checkout
Trong trường hợp đã quay về trạng thái 1 commit nào đó đã thực hiện trong quá khứ (b...), sau đó muốn quay lại commit gần nhất (a.....) , kô được quay lại bằng cách git checkout <tên commit gần nhất >.
Nếu mà lỡ làm như vậy, mà lại tạo ra các thay đổi code trong (a...), sau đó muốn commit -m và push thì bắt buộc phải tạo ra 1 nhánh mới bằng git checkout -b <tên nhánh mới>, sau đó có thể push được lên account .
Cách tốt nhất để từ commit (b....) về gần nhất là git checkout <tên nhánh đang dùng>, sau đó thì mới được thêm hay sửa code mà khi push vẫn giữ nhánh cũ
Tao code tren local, sau do push len remote
Tao moi 1 folder, sau do: git init
Them cac file vao trong folder, sau do kiem tra : git status
Them vao git: git add fileHayFolderCanCommit
Tao commit: git commit -m " Noi dung commit"
Create a new repository on GitHub, ten la mynewrepository, ben trong tai khoan github
git remote add origin https://github.com/lamhung81/mynewrepository.git
git push -u origin master
Co khi can phai chay lenh nay truoc lenh tren: git pull origin master
Tham khao
https://product.hubspot.com/blog/git-and-github-tutorial-for-beginners
Tao code tren local tren Windows với ứng dụng Github Desktop, sau do push len remote
Nội dung này có ích cho việc ví dụ muốn lưu một thư mục chứa các files trong quá trình viết 1 bài báo Latex
Trên chương trình Github Desktop, Chọn File/ New repository
Khi đó sẽ xuất hiện cửa sổ "Create a new repository", trên đó cần làm
Trong ô trống Name,đặt tên của Folder mà ta muốn tạo ra để lưu giữ file, ví dụ là NAMEXXX
Trong ô trống Description, viết tóm tắt nội dung của repository (folder) cần làm gì, phục vụ mục đích gì
Trong ô trống Local path, chọn folder mà ta muốn lưu trữ folder với tên đã đặt là NAMEXXX ở trên
Có thể chọn hay không tick vào Initilize this repository with a README
Sau đó ân vào Creat repository
Sau đó trên Windows explorer, truy cập vào thư mục NAMEXXX, thay đổi nội dung, ví dụ thay đổi hay thêm file hay dùng Tex editor
Quay trở lại màn hình của Github Desktop, trên tab current repository, những thay đổi trong folder NAMEXXX sẽ được hiển thị.
Cần commit bằng cách điền nội dung vào trong ô Summary (required) là bắt buộc và viết Description, sau đó ấn Commit to master
Sau đó có thể ấn vào tab Push (or Fetch origin)
Discard changes đã tạo ra trên 1 file nào đó nhưng chưa add hay commit
Gỉả sử có file aut_att_control_main.cpp. Vì lý do nào đó cần quay trở lại trạng thái của commit cũ (commit aaa) trong lích sử. Sau khi thực hiện 1 số thay đổi (ví dụ để test cái gì đó) muốn quay trở lại đúng trạng thái của commit aaa đó. Để làm như vậy,dùng lệnh
To delete the_local_GIT branch we can try one of the following commands:
as you can see above, we have 2 different argument, one with ‘d’ and one with ‘D’.
The-d
option stands for--delete
, which would delete the local branch, only if you have already pushed and merged it with your remote branches.
The-D
option stands for--delete --force
, which deletes the branch regardless of its push and merge status, so be careful using this one!
Delete a remote GIT branch
To delete a remote branch you can use the following command:
Alternatively, there is this other following option too, which might be just a bit hard to remember:
These top options can also be used if you want to delete a “tag”.
Last updated