- vừa được xem lúc

Github CLI - Đơn giản hóa cuộc sống cho developer

0 0 29

Người đăng: Doan Ngoc Thuong

Theo Viblo Asia

1. Giới thiệu

Đối với một developer, làm việc nhóm là một điều bắt buộc hiện này và công cụ hỗ trợ tốt nhất để tối ưu hóa việc coop đó là Github. Chuyện là sau khi mình chuyển sang hệ điều hành mới, việc clone các project quả là cực hình với mình vì phải liên tục mở github để copy remote link, rồi tiến hành clone về và setup.

Cách đây một năm, Github đã release Github CLI tool khá là thú vị và tiện lợi cho developer để giải quyết các vấn đề về workflow như ví dụ mình kể trên. Các chức năng chính có thể tóm gọn là đem cả Github của bạn từ web lên môi trường terminal.

Hình ảnh giới thiệu Github CLI

2. Cách cài đặt

Trang chủ Github CLI

Do là con cưng của Microsoft nên các tutorial rất rõ ràng. Các bạn có thể install dựa trên hướng dẫn từ trang chủ. https://github.com/cli/cli#installation

3. Tính năng

Khi đã cài đặt xong chúng ta hãy cùng thử một vài chức năng cơ bản. Đầu tiên chúng ta cùng dùng lệnh:

gh

Các chức năng của Github CLI sẽ được liệt kê đầy đủ. Việc đầu tiên chúng ta cần làm là Login vào tài khoản Github bằng lệnh:

gh auth login

Sẽ có 2 lựa chọn đó là login bằng web hoặc dán authentication token vào (về authentication token thì Github hiện đang chuyển dần sang dùng phương thức này cho các tác vụ cần liên kết với tài khoản Hướng dẫn về authentication token).


Trong bài viết này mình sẽ giới thiệu về tính năng mà mọi người dùng nhiều nhất trong Github đó là tương tác với repo thông qua COMMAND gh repo:

Chức năng đầu tiên là tạo repo gh repo create [<name>], chỉ với một câu lệnh là chúng ta đã pass được cả đống thứ lằng nhằng lúc tạo repo trên web.

github cli create repo Và đương nhiên nó sẽ thay chúng ta cả việc setup repo github ở local

github cli congfig git remote


Chức năng tiếp theo đó là clone repo về bằng câu lệnh gh repo clone [<url>] Tuy nhiên thường thì chúng ta chỉ clone repo cá nhân lúc chuyển đổi môi trường làm việc, nhưng Github CLI lại không hỗ trợ lệnh gh repo list (vẫn còn trong diện issue).

Sau quá trình research thì mình tìm ra được một tips rất hay của người dùng mislav. Chúng ta sẽ mở file ~/.config/gh/config.yml và thêm đoạn config này vào.

# ~/.config/gh/config.yml
aliases: repos: | !gh api --paginate graphql -f owner="$1" -f query=' query($owner: String!, $per_page: Int = 100, $endCursor: String) { repositoryOwner(login: $owner) { repositories(first: $per_page, after: $endCursor, ownerAffiliations: OWNER) { nodes { nameWithOwner } pageInfo { hasNextPage endCursor } } } } ' | jq -r '.data.repositoryOwner.repositories.nodes[].nameWithOwner' | sort

Mục đích là dùng câu lệnh gh api và thư viện jq (nhớ cài đặt đấy nhé) để có thể handle GraphQL response mà Github trả về.

Sau khi config xong chúng ta có thể dùng lệnh gh repos [<username>] để list tất cả repo của một người dùng bất kỳ.

Github list repo

Các chức năng khác như view hoặc fork thì cũng tương tự như vậy, bạn có thể dùng lệnh gh repo --help nó sẽ có đầy đủ các documents hướng dẫn (con cưng có khác).

4. Tổng kết

Hôm nay mình đã giới thiệu về Github CLI, một công cụ tuyệt vời dành cho developer. Mong rằng các bạn sẽ áp dụng được nó và tối ưu hóa workflow để code tốt hơn. Chúc mừng năm mới. ???

Bình luận

Bài viết tương tự

- vừa được xem lúc

Chinh phục Bash Shell Part 3 - Redirection

9. Redirection. Kỹ thuật redirection là kỹ thuật dùng toán tử >. redirect từ luồng stream này sang luồng stream khác.

0 0 27

- vừa được xem lúc

Chinh phục Bash Shell Part 2

Part 1 mình đã đề cập đến shebang, Navigating directories, Listing file các bạn có thể xem lại ở đây nhé. 5. Sử dụng cat. Chức năng chính của cat là in ra nội dung của file nào đó.

0 0 22

- vừa được xem lúc

Chinh phục bash shell (Phần 1)

Hí mọi người lâu giờ mình cũng tiếp xúc với bash shell nhiều mà cũng chưa đi sâu hay tìm hiểu theo hệ thống nên loạt bài này mình sẽ đi theo hệ thống để biết nhiều thứ hơn về bash shell. Mọi người nếu ai mới tiếp cận môn này thì cùng tìm hiểu với mình nhé .

0 0 27

- vừa được xem lúc

Tìm hiểu về Bash Script cơ bản

Chào các bạn . Như tiêu đề thì hôm nay chúng ta sẽ cùng tìm hiểu về Bash Script.

0 0 20

- vừa được xem lúc

Bắt đầu với Lập trình Shell

Mặc dù chúng ta đã quá quen với shell script. Nhưng sau đây, tôi vẫn muốn giới thiệu về cách để viết 1 shell script cho những bạn đang cần nó.

0 0 85

- vừa được xem lúc

Cài Oh My Zsh, Powerlevel10k, tối ưu và sử dụng phím tắt cho Terminal

1.Mở đầu. . .

0 0 26