Khi bạn tham gia một dự án nào đấy thì việc phải làm việc với nhiều người là điều thường thấy. Kể cả làm việc một mình thì việc quản lý source code là vô cùng quan trọng. Show Theo như mình biết thì có 2 mô hình quản lý source code: Quản lý tập trung (SVN), Quản lý phân tán (git). Mỗi hình thức đều có ưu và nhược điểm riêng. Bài viết này, mình sẽ hướng dẫn sử dụng Github để quản lý source code cho các bạn, một dịch vụ git rất nổi tiếng của Microsoft. #Github là gì?GitHub là một dịch vụ nổi tiếng cung cấp kho lưu trữ mã nguồn Git cho các dự án phần mềm. Github có đầy đủ những tính năng của Git, ngoài ra nó còn bổ sung những tính năng về social để các developer tương tác với nhau. Vài thông tin về GIT:
GitHub có 2 phiên bản: miễn phí và trả phí. Với phiên bản có phí thường được các doanh nghiệp sử dụng để tăng khả năng quản lý team cũng như phân quyền bảo mật dự án. Github cung cấp các tính năng social networking như feeds, followers, và network graph để các developer học hỏi kinh nghiệm của nhau thông qua lịch sử commit. Nếu một comment để mô tả và giải thích một đoạn code. Thì với Github, commit message chính là phần mô tả hành động mà bạn thực hiện trên source code. Github Nền tảng lưu trữ Git source lớn nhấtGithub trở thành một yếu tố có sức ảnh hưởng lớn trong cộng động nguồn mở. Cùng với Linkedin, Github được coi là một sự thay thế cho CV của bạn. Các nhà tuyển dụng cũng rất hay tham khảo Github profile để hiểu về năng lực coding của ứng viên. Giờ đây, kỹ năng sử dụng git và Github từ chỗ ưu thích sang bắt buộc phải có đối với các ứng viên đi xin việc. Thật thiếu sót nếu đọc về Github mà chưa biết gì về Git. Kính mời bạn đọc bài này ngay: Git là gì? Cùng tìm hiểu cách quản lý source code với Git #Tính năng API GithubGithub ngoài những tính năng tuyệt đỉnh, hỗ trợ bạn làm viết với Git cực kỳ mượt. Github còn hỗ trợ nhiều API với những tính năng quan trọng:
Và còn rất nhiều API hay ho khác nữa, bạn có thể tự khám phá thêm tại đây nhé. #Tại sao nên lại là Github? Hướng dẫn sử dụng GithubMặc dù Github có nhiều lợi ích như vậy. Nhưng sẽ có nhiều bạn thắc mắc: Tại sao không sử dụng Dropbox hay các dịch vụ tương tự để quản lý source code? Các dịch vụ đó cũng cho phép đồng bộ source code của các bạn trong team về một server mà? Tại sao nên sử dụng Github?Để trả lời cho câu hỏi này, mình sẽ lấy một ví dụ: Giả sử dự án của bạn có 2 developer cùng sửa một file, sau đó commit đồng thời lên server. Với Dropbox thì người commit lên trước sẽ được ưu tiên sửa file. Nhưng với Github, việc commit đồng thời không phải là vấn đề nghiêm trọng. Vì Git sẽ ghi lại lịch sử commit, đảm bảo các commit được tổ chức tốt, tránh sự hỗn loạn giữa các version của file sửa đổi được gửi lên server. Do đó, việc sử dụng Github sẽ tránh được tất cả sự nhầm lẫn khi commit. Đảm bảo cùng làm việc trên một source code trở lên dễ dàng hơn rất nhiều. #Cách tạo một GitHub RepositoryRepository là một không gian để lưu trữ dự án của bạn. Do tính chất phân tán của Git, nên có thể hiểu repository là nơi lưu trữ mã nguồn ở cả local và server. Bạn có thể lưu trữ file code, text, hình ảnh hoặc bất kỳ loại tệp nào trong repository. Để tạo một repository trên Github bạn làm như sau:
Bạn có thể xem hình bên dưới cho rõ thêm nhé: Tạo mới Repository trên Github
Trong đó, bạn lưu ý 2 options sau:
Khi tạo xong, repo sẽ như sau: Thông tin một repositoryKhi đã có repository, bạn có thể clone, pull, push source code của mình lên đó rồi. Phần tiếp theo của bài viết, chúng ta sẽ tìm hiểu về branch trên Github. #Tạo branch trên GithubBranch giúp bạn làm việc trên các phiên bản khác nhau của cùng một repository. Mình lấy ví dụ: Bạn muốn phát triển thêm một tính năng mới cho dự án. Nhưng bạn lại phần sửa đổi đó lại ảnh hưởng tới dự án chính. Lúc này branch ra đời. Branch cho phép bạn chuyển đổi qua lại giữa các trạng thái và phiên bản khác nhau của dự án. Với kịch bản ví dụ ở trên, bạn có thể tạo mới một branch và phát triển tính năng mới trên đó mà không ảnh hưởng tới master branch. Sau khi đã implement xong, test kỹ càng thì có thể merge vào master branch. Quản lý branch trong gitĐể tạo một branch trên Github, bạn làm như sau:
#Hướng dẫn sử dụng Github chi tiếtGithub có đầy đủ những command của git. Nhưng do bài viết này quá dài nên mình sẽ không liệt kê hết tất cả chúng ở đây. Mình sẽ tập trung hướng dẫn những command cơ bản nhất, hay dùng trên Github. 1. Commit CommandCommit command cho phép bạn lưu lại những thay đổi của file. Khi bạn commit, nên viết mô tả rõ ràng trong commit message. Điều này sẽ giúp cho quản lý dự án tốt hơn, có thể theo dõi, review những thay đổi source code sau này.
2. Pull CommandLệnh PULL request là lệnh quan trọng nhất trên Github. Nó cho biết những thay đổi trong source code, và yêu cầu owner của source code xem xét nó và merge nó vào master branch. Một khi commit xong, bất kể ai cũng có thể update sự thay đổi và thảo luận về sự thay đổi đó. Tính năng này rất hay cho các dự án mã nguồn mở. Khi mà bất kì cũng có thể đóng góp công sức cho dự án. Tất nhiên, mọi sự thay đổi đều phải được sự đồng ý của owner dự án. Ở đây, mình cần làm rõ hơn với các bạn đỡ nhầm lẫn về lệnh Pull:
3. Merge commandLệnh cơ bản cuối cùng mà mình muốn nhắc đến là merge. Lệnh merge này cho phép bạn hợp nhất những thay đổi vào một branch.
Bạn có thể tham khảo hình bên dưới: Cách Merge branch#Cloning dự án từ GithubTiếp tục hướng dẫn sử dụng Github. Đây có lẽ là thao tác bạn hay dùng nhất khi tìm kiếm mã nguồn mở trên mạng. Khi bạn thấy một dự án nào đó hay ho và có thể ứng dụng được cho dự án của mình, bạn muốn download dự án này về máy tính để tham khảo. Có 2 cách để tải dự án từ Github:
#Tạm kếtTrên đây, mình đã hoàn thành hướng dẫn cách sử dụng Github cơ bản. Tất cả các thao tác đều thực hiện trên web. Nếu bạn muốn tương tác với Github qua command hoặc một phần mềm quản lý Git thì có thể tham khảo thêm. Mình có gợi ý một số bài viết như:
Mình hi vọng, qua bài viết này, bạn sẽ có những kỹ năng cần thiết để làm việc với Git. |