Git Notes

Cài đặt

  • Môi trường windows 8
  • Download tại trang web
  • Tiến hành cài đặt

Một số lệnh thường dùng (window, mac, linux)

  • Tạo thư mục làm việc liên kết với git
    • “Git clone ””
    • : là đường dẫn tới server
    • : tên thư mục trên máy
  • Thêm các thay đổi
    • “git add .” => thêm tất cả
    • “git add –all .” => thêm tất cả có theo vết (trường hợp rename)
  • Xem các thay đổi
    • “git status”
  • Xem so sánh với server
    • “git diff HEAD”
    • Để thoát thì nhấn Esc và lệnh :q (thoát) hoặc các lệnh bên dưới
      • :q! thoát nhưng không lưu
      • :wq ghi và thoát
      • :x ghi và thoát
      • :qa thoát tất cả
  • Đọc các thay đổi từ server
    • git pull
    • git pull origin master
  • Cập nhật thay đổi lên server
    • git push origin master
  • Chọn tất cả nội dung của mình khi có conflict (cẩn thận khi xài => phải xem xét kỹ)
    • git checkout –ours . # checkout our local version of all files
    • git add -u # mark all conflicted files as merged
    • git commit # commit the merge
      • git commit -m “….”
      • git commit –amend -m “….”
  • Tạo một branch
    • git branch branch_name
    • git chekcout -b newbranch tag_name: tạo 1 branch từ tag tên tag_name
  • Checkout một branch
    • git fetch
    • git checkout branch_name
  • Trộn (merge) lại vào master
    • git checkout master
    • git merge branch_name
  • Tag
    • git tag tag_name: tạo một tag
    • git push –tags: cập nhật tất cả tag tới server
    • git push origin tag tag_name: cập nhật 1 tag tới server

Chuyển 1 branch thành master

  • Muốn chuyển better_branch thành master
    • git checkout better_branch
    • git merge –strategy=ours master # keep the content of this branch, but record a merge
    • git checkout master
    • git merge better_branch # fast-forward master up to the merge
  • Nếu muốn lịch sử rõ ràng thì nên làm lệnh sau
    • git merge –strategy=ours –no-commit master
    • git commit # add information to the template merge message
  • Tham khảo: http://stackoverflow.com/questions/2763006/change-the-current-branch-to-master-in-git