0

Hướng dẫn Git sao chép repo có sẵn

Git hỗ trợ cực kỳ tốt cho làm việc nhóm. Nhiều người có thể cùng tham gia vào một dự án và đóng góp mã nguồn của mình thông qua Git repo. Để làm được điều này, người tham gia dự án sẽ cần sao chép từ một repo chung của dự án (tạm gọi là remote repo) về trên máy của mình. Phiên bản repo trên máy local sẽ hoàn toàn giống và đầy đủ thông tin so với phiên bản remote repo chung của dự án. Bài viết sẽ hướng dẫn git sao chép repo có sẵn.

Thông tin giả định

  • Hệ điều hành là một bản phân phối Linux: Ubuntu, CentOS, Fedora
  • Hướng dẫn sử dụng git trên dòng lệnh
  • Git sử dụng phiên bản mới hơn Git 1.6
  • Sử dụng dịch vụ của Github để làm kho lưu chung, do đó bạn cần chắc tài khoản của mình có quyền thao tác trên repo.

Sao chép từ kho lưu chung – remote repo

Để tham gia một dự án thì đầu tiên là thực hiện sao chép repo về máy của mình.

Giả sử mình muốn tham gia dự án PhotoShare, sử dụng lệnh git clone:

Lúc bấy giờ, git sẽ sao chép mã nguồn về và đặt vào một thư mục cùng tên là photoshare/. Bạn có thể chỉ định thư mục cụ thể để sao chép mã nguồn vào nếu không muốn dùng tên mặc định của dự án:

Thay đổi mã nguồn

Sau khi sao chép mã nguồn về, chúng ta đã có toàn bộ mã nguồn, và có thể thực hiện thay đổi, chỉnh sửa theo ý muốn.

Thực hiện lưu lại mã nguồn đã thay đổi trên local repo.

Ở thời điểm này, phiên bản mã nguồn của bạn đã được lưu lại. Nhưng đó chỉ là lưu tại repo trên máy tính của bạn mà thôi. Chúng ta cần thực hiện bước tiếp theo để chia sẻ mã nguồn của mình với các lập trình viên khác.

Đóng góp code vào kho lưu chung

Basic git clone

Đối với Git, hầu hết tất cả các thao tác mà bạn thực hiện đều nằm trên local repo. Dễ dàng thấy được điều này ở tốc độ khủng khiếp khi ta thực hiện commit code. SVN sẽ chẳng bao giờ là đối thủ tốc độ ở khoản commit so với Git. Nhưng vì vậy, sau khi commit, mã nguồn của bạn vẫn chỉ nằm ở local. Do đó, sau khi bạn hoàn thành chức năng trong code, đạt được ý định của mình (sau rất nhiều commit), chúng ta sẽ thực hiện đẩy code lên remote repo để các lập trình viên khác trong dự án cũng dùng được.

Lưu ý, trước hết chúng ta cần cập nhật source code mới nhất về; vì có thể trong thời gian phát triển của chúng ta, các lập trình viên khác đã cập nhật và thay đổi repo qua nhiều revision rồi:

Already up-to-date nghĩa là code của bạn là mới nhất rồi, không bị trùng, có thể an toàn để đẩy lên.

Sau đó, sử dụng lệnh git push :

Bạn có thắc trong dòng lệnh trên origin là gì? master là gì không? Mình có thể dịch ra tiếng Việt dòng lệnh trên như sau:

git hãy đẩy dữ liệu đến nhánh master trên kho lưu origin cho tôi!

origin là tên của remote repo, tương ứng gán với một URL là end-point của repo.

master là tên của nhánh làm việc trên kho lưu. Ở bài này sẽ không nói chi tiết về khái niệm phân nhánh trên git.

Tên của remote mặc định là origin và tên nhánh mặc định là master, do đó, nếu bạn chỉ làm việc trên nhánh master thì có thể đẩy lên origin nhanh chóng và ngắn gọn bằng lệnh git push .

Nếu bạn sử dụng github, và clone bằng URL có chứa https, thì bạn sẽ cần cung cấp usernamepassword đăng ký trên Github. Cũng như nhiều dịch vụ Git khác, Github còn cung cấp giao thức kết nối thông qua SSH, bạn có thể nhập password hoặc cài đặt private/public key để tự động kết nối.

Tổng kết

Để bắt đầu tham gia dự án, hãy chuẩn bị tài khoản dùng chung trên hệ thống git của bạn, yêu cầu quản trị viên cấp cho bạn quyền thao tác thích hợp trên repo dự án, và tiến hành theo trình tự sau để đóng góp mã nguồn:

Ở bài sau, tôi sẽ hướng dẫn sử lý nếu có xung đột (conflict) trong quá trình commit. Chúc các bạn làm việc hiệu quả.

 

level_geekBài viết, thông tin học thuật giao lưu về Git xin gởi về địa chỉ hoangtua.vn[at]gmail.com

 

 

Bình luận với Facebook

Hoàng Tựa

Yêu thích lập trình web và tạo ra những thứ đẹp đẽ.

Leave a Reply

Your email address will not be published. Required fields are marked *