Hướng Dẫn Sử Dụng Source Tree Là Gì, Sử Dụng Sourcetree Để Clone Github

Related Articles

Đa số những project open source đều để ở GitHub và nhiều bạn ấn nút “ Download ” để tải code về. Làm như vậy sẽ phiền phức so với những project lớn mỗi khi có update code thì bạn lại phải tải về hàng loạt. Bài này sẽ hướng dẫn những bạn sử dụng Sourcetree – 1 công cụ sử dụng Git để việc làm thuận tiện hơn. Với giao diện GUI thân thiện những bạn hoàn toàn có thể thuận tiện xem log của code. Các thao tác pull, commit, push, … đều thuận tiện hơn việc nhớ những dòng lệnh dài dòng. Để đầu óc còn tâm lý việc khác và khỏi lộn xộn với hàng đống cú pháp bạn phải thao tác mỗi ngày .Bạn đang xem : Source tree là gì

Bài viết này phù hợp với những người không chuyên lập trình, những người thích làm cho mọi việc đơn giản hơn. Còn những bạn cho rằng phải sử dụng command cho Git thì mới pro thì bài viết này không dành cho các bạn.

Các bạn cũng hoàn toàn có thể sử dụng GitHub Desktop với tính năng tương tự như. Tuy nhiên Sourcetree được nhìn nhận cao hơn và thân thiện người dùng hơn ( quan điểm cá thể ) .

Những lý do cần sử dụng sourcetree

Trong repo Git ( ở đây là GitHub ) có nhiều branch khác nhau, mỗi file code có nhiều lần sửa đổi khác nhau. Sử dụng Sourcetree giúp bạn thuận tiện xem được lịch sử vẻ vang của những sửa đổi đó. Hơn nữa giúp bạn quản trị nhiều repo khác nhau trong máy tính .Các tính năng điển hình nổi bật gồm :Xem lịch sử commit một cách dễ dàng: sửa bao nhiêu file, file sửa dòng nào,…Dễ dàng chuyển qua lại các branch khác nhauHiển thị thông báo rõ ràngXem lịch sử dân tộc commit một cách thuận tiện : sửa bao nhiêu file, file sửa dòng nào, … Dễ dàng chuyển qua lại những branch khác nhauHiển thị thông tin rõ ràng*

Giải thích các thuật ngữ

Hình trên là so sánh sự đổi khác của code trong lịch sử dân tộc. Dòng màu đỏ là bị xóa, màu xanh là thêm vào, số dòng giữ nguyên nhưng code 2 dòng đó đã biến hóa .

Repo: viết tắt của repository – “thùng chứa” code– Origin: repository gốc, khi bạn clone code tức là bạn clone từ origin. Bài này lấy ví dụ minh họa từ GitHub thì origin được đặt ở GitHub.– Working Directory: folder chứa code trong máy bạn.– Pull: “kéo” code mới từ origin về máy, tương tự như update bên SVN– Commit: cập nhật những sửa đổi của code vào repo trong máy của bạn– Push: “đẩy” những sửa đổi mà bạn đã commit lên origin– Hunk: đoạn code bị sửa đổi trong file, 1 file có thể có nhiều hunk– Stage hunk: chọn hunk để commit– Stage file: chọn file để commit, tương đương stage tất cả hunk trong file đó.

Cài đặt sourcetree

Các bạn tải về từ website : https://www.sourcetreeapp.com/ .Khi thiết lập chương trình sẽ nhu yếu bạn cài 1 số thứ như Git và. Net Framwork ( nếu chưa cài ). Khi cài xong chương trình có giao diện như bên dưới*Các repo được hiển thị dưới dạng tab, những bạn hoàn toàn có thể quản trị nhiều project khác nhau thuận tiện .

Các thao tác thường gặp

Clone source code

Các bạn vào website của repo, ấn nút Clone or tải về, 1 popup hiện ra bạn copy link. git của repo đó .*Mở Sourcetree lên, ấn vào nút Clone và điền những thông tin thiết yếu : link tới repo, thư mục chứa code trong máy của bạn và tên của project sẽ hiển thị. Sau đó ấn nút clone và chờ đón*

Switch qua lại giữa các branch

Switch qua branch khác còn được gọi là “Checkout branch”. Mục đích của mỗi branch là viết code cho 1 vài tính năng nào đó, sau khi hoàn thành thì merge vào branch chính là Master. Các project của mình đưa lên GitHub có những branch khác nhau nên cần switch qua branch phù hợp.

Xem thêm : Nhân Vật Lịch Sử : An Dương Vương An, An Dương VươngLấy ví dụ về repo IPSSedu, đây là project hướng dẫn cách đọc biển số xe máy. Trong repo có nhiều branch khác nhau, mỗi branch là 1 ngôn từ khác hoặc 1 thuật toán khác. Do đó cần phải switch qua branch có code tương thích với nhu yếu .Trong hình trên có “ origin ” là repo trên GitHub, trong đó đang có 5 branch. Ấn chuột phải vào branch muốn checkout rồi chọn “ Checkout … ” như trong hình. Sau khi checkout xong thì code của bạn sẽ tương ứng với code trong branch đó .Khi code của bạn đang bị sửa khác với branch định checkout thì Sourcetree sẽ báo lỗi conflict. Lúc đó bạn phải revert / stash / commit … trước khi checkout qua branch khác .

Pull source code

Pull là thao tác “ kéo ” code từ origin về máy mỗi khi có đổi khác ở origin. Cũng như tựa như như update bên SVN : đó là update những biến hóa về Working Directory cho giống server. Thao tác này xảy ra khi những bạn cần update code mới nhất .Chỉ cần ấn nút pull, sau khi pull xong code sẽ giống với server. Lưu ý là code dưới máy bạn bị sửa trùng với file bị sửa ở origin thì cần revert / stash / commit … code .

Checkout submodule

Submodule là 1 repo khác thường được sử dụng như 1 lib, ví dụ như OpenCV thường được dùng làm submodule. Mặc định thì khi clone code không clone kèm submodule, do đó cần phải checkout submodule để rất đầy đủ code .Trong hình trên có 1 submodule là opencv320, khi bạn double click vào thì Sourcetree sẽ mở ra tab mới như 1 repo. Lúc đó bạn cũng cần clone, pull code về như 1 repo thông thường. Sau khi pull xong thì sẽ có đủ code để sử dụng .

Stash file

Ở phần trên khi pull, checkout code mà bị conflict thì bạn phải revert / stash / commit code. Nhưng khi đang làm dở dang thì bạn hoàn toàn có thể stash – nghĩa là cất tạm đâu đó rồi sửa sau .

Mỗi khi stash là bạn sẽ “đem cất” toàn bộ những file code đang bị sửa để có thể pull/checkout code mới. Ấn vào nút Stash, ở cửa sổ hiện lên đặt tên cho stash đó sao cho dễ nhớ rồi OK. Khi đó thì toàn bộ code trong máy bạn sẽ clean để sẵn sàng pull/checkout code mới về.

*Các stash nằm trong mục Stashes ở panel bên trái. Khi bạn đã pull / checkout code xong thì ấn chuột phải vào stash rồi chọn “ Apply stash ” để lấy code đã cất tạm ra. Lưu ý những file code sau khi apply stash sẽ bị mất đoạn vừa sửa trên origin. Lúc đó phải kiểm tra kỹ đoạn nào bị sửa mà revert lại cho đúng .

Lời cuối

Mục tiêu của bài viết này nhằm mục đích hướng dẫn cách sử dụng Sourcetree để clone code đúng cách. Còn thao tác thì cần commit, push, pull request, … mình sẽ viết ở bài viết khác .

More on this topic

Comments

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Advertismentspot_img

Popular stories