Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Git and GitHub for beginners

Git and GitHub for beginners

Presented at Openroad technical workshop June 14th, 2014.

Anh Tuan TRUONG

June 14, 2014
Tweet

More Decks by Anh Tuan TRUONG

Other Decks in Technology

Transcript

  1. Git là gì, Tại sao sử dụng Git ? 

    Git là một phần mềm quản lý source như SVN dùng để quản lý và kiểm tra các phiên bản mã nguồn khác nhau trong quá trình phát triển mã nguồn.  Nó có rất nhiều điểm hay: phân tán, không cần kết nối với Central Repository khi commit  Đặc biệt nó đã thay đổi cách các lập trình viên chia tách và nhập các nhánh phần mềm. Trong khi với svn, việc này luôn là ác mộng vì các xung đột trong quá trình tách/nhập, còn với Git việc này quá dễ dàng.
  2. Nguyên tắc quản lý code trên Git Nhánh Master, nhánh

    này lưu trữ trên đó là phiên bản chính thức mới nhất đang được phát hành. Nhánh Develop là nhánh được cập nhật liên tục các đóng góp của tất cả mọi người ở mọi thời điểm. Nhánh này sẽ tiếp nhận các đóng góp của mọi người gửi đến thông qua việc tiếp nhận Pull Request cũng như tiếp nhận việc nhập các nhánh khác vào. Khi nhánh Develop đạt độ chín mùi, nó sẽ được nhập vào nhánh Master đồng thời được dán nhãn phiên bản.
  3. Cài đặt  Tải git về cho OSX: https://code.google.com/p/git-osx-installer/downloads/list?can=3 

    Tải git về cho Windows http://msysgit.github.io/  Tải git về cho Linux http://git-scm.com/book/en/Getting-Started-Installing-Git
  4. Tạo một repository mới Để tạo 1 repository mới, bạn

    hãy mở cửa sổ lệnh và gõ dòng lệnh sau: git init
  5. Cấu hình thông của bạn Hai thông tin bắt buộc

    mà bạn luôn luôn phải khai báo đó là tên và địa chỉ email. Mỗi commit của bạn đều sẽ sử dụng thông tin này. Để cấu hình, nhập: git config --global user.name "Vu Thao" git config --global user.email [email protected]
  6. Sao chép (clone) một repository Để clone 1 repository có

    sẵn ở trên máy cục bộ, bạn hãy sử dụng dòng lệnh sau: Nếu repository đó ở máy chủ khác thì bạn hãy gõ dòng lệnh sau: git clone /đường-dẫn-đến/repository/ git clone tênusername@địachỉmáychủ:/đường-dẫn- đến/repository
  7. Thêm (add) & commit Bạn có thể đề xuất thay

    đổi (thêm nó vào chỉ mục Index) bằng cách Đây là bước đầu tiên trong quy trình git cơ bản. Để thật sự commit những thay đổi, bạn sử dụng Bây giờ thì tập tin đã được commit đến HEAD, nhưng chưa phải trên thư mục remote. git add <tên-tập-tin> git add * git commit -m "Ghi chú Commit"
  8. Nhánh Các nhánh (branches) được dùng để phát triển tính

    năng tách riêng ra từ những nhánh khác. Nhánh master là nhánh "mặc định". Sử dụng các nhánh khác khi đang trong giai đoạn phát triển và merge trở lại nhánh master khi đã hoàn tất.
  9. Đ y (push) các thay đ i ẩ ổ Nếu

    bạn chưa clone một repository hiện có và muốn kết nối repository của bạn đến máy chủ remote, bạn phải thêm nó với Bây giờ bạn đã có thể đẩy các thay đổi của mình vào máy chủ đã chọn git remote add origin <máy-chủ>
  10. Nhánh Tạo một nhánh mới và đặt tên là "feature_x"

    và chuyển qua nhánh đó (từ master) bằng cách git checkout -b feature_x Trở lại nhánh master: git checkout master Xóa nhánh feature_x đó lần nữa git branch -d feature_x Đẩy nhánh đó đến remote repository git push origin <nhánh>
  11. Cập nhật & trộn (update & merge) Để cập nhật

    repository cục bộ của bạn và commit mới nhất, thực thi Để trộn một nhánh khác vào nhánh đang hoạt động (vd: master), sử dụng git checkout -b feature_x git merge <nhánh>
  12. Gắn nhãn (tagging) Bạn tạo tag mới tên là1.0.0 bằng

    cách chuỗi 1b2e1d63ff là 10 ký tự đầu tiên của mã commit (commit id) mà bạn muốn tham chiếu đến bằng nhãn của bạn. Bạn có thể lấy mã commit với lệnh git tag 1.0.0 1b2e1d63ff git log
  13. Thay thế các thay đổi cục bộ Trong trường hợp

    bạn làm sai điều gì đó, bạn có thể thay thế các thay đổi cục bộ bằng lệnh Nếu bạn muốn hủy tất cả thay đổi và commit cục bộ, lấy về (fetch) lịch sử gần đây nhất từ máy chủ và trỏ nhánh master cục bộ vào nó như sau: git reset HEAD -- <tên-tập-tin> git checkout -- <tên-tập-tin> git fetch origin git reset --hard origin/master
  14. FOOTER Tài liệu tham khảo Tại sao sử dụng Git

    http://wiki.nukeviet.vn/programming:vcs:git Nguyên tắc quản lý kho code http://wiki.nukeviet.vn/programming:github_rule Ebook git Pro http://git-scm.com/book/vi Sổ tay Git http://rogerdudler.github.io/git-guide/index.vi.html GitHub https://help.github.com/
  15. FOOTER Tài liệu tham khảo Chuyển đổi kho code từ

    svn sang git http://nukeviet.vn/vi/news/Cong-dong-nguon-mo/Chuyen-doi-kho-cod e-google-code-tu-svn-sang-git-va-dua-len-github-135/ Hướng dẫn merge và xử lý lỗi conflic Pull Request trên Git http://wiki.nukeviet.vn/programming:vcs:git#hu%E1%BB%9Bng _d%E1%BA%ABn_merge_va_x%E1%BB%AD_ly_l%E1%BB%97i_conflic ull_request_tren_git
  16. GIT DÀNH CHO NGƯỜI MỚI BẮT ĐẦU Vũ Văn Th

    o ả Email: [email protected] NukeViet Administrator FB: facebook.com/nukeviet Fanpage: facebook.com/nukevietcms Twitter: twitter.com/nukeviet