Git Cho Người Mới: Bước Đầu Tiên Để Trở Thành Chuyên Gia (Phần 1)

folder Kiến thức công nghệ
today 05/07/2024 22:44
Git là một hệ thống quản lý phiên bản phân tán, được tạo ra bởi Linus Torvalds vào năm 2005. Nó được sử dụng để theo dõi các thay đổi trong mã nguồn của các dự án phần mềm và giúp nhiều lập trình viên có thể làm việc cùng nhau trên cùng một dự án mà không gặp phải xung đột.
git-cho-nguoi-moi:-buoc-dau-tien-de-tro-thanh-chuyen-gia-(phan-1)

Các tính năng chính của Git:

Phân tán: Mỗi người dùng có một bản sao đầy đủ của kho lưu trữ, bao gồm toàn bộ lịch sử các thay đổi. Điều này giúp tăng tính linh hoạt và khả năng phục hồi của hệ thống.

Hiệu quả và nhanh chóng: Git được thiết kế để hoạt động hiệu quả ngay cả với các dự án lớn. Các thao tác như commit, merge, và branch đều diễn ra nhanh chóng.

Quản lý nhánh (branch): Git cho phép tạo và quản lý các nhánh dễ dàng, giúp việc phát triển tính năng mới hoặc sửa lỗi mà không ảnh hưởng đến mã nguồn chính.

Lịch sử rõ ràng: Git lưu trữ lịch sử thay đổi một cách rõ ràng và minh bạch, giúp dễ dàng theo dõi ai đã làm gì và khi nào.

Hợp nhất (merge): Git cung cấp các công cụ mạnh mẽ để hợp nhất các nhánh khác nhau và giải quyết xung đột một cách hiệu quả.

Hỗ trợ cộng đồng mạnh mẽ: Git là một trong những hệ thống quản lý phiên bản phổ biến nhất, với sự hỗ trợ rộng rãi từ cộng đồng lập trình viên và tích hợp tốt với nhiều dịch vụ và công cụ khác nhau như GitHub, GitLab, và Bitbucket.

Git là công cụ không thể thiếu đối với các lập trình viên, giúp họ quản lý mã nguồn hiệu quả và hợp tác dễ dàng với những người khác.

Các Lệnh Git Cơ Bản

1. Thiết lập ban đầu

git config: Sử dụng để cấu hình các thiết lập Git trên máy tính của bạn, chẳng hạn như tên và email.

git config --global user.name "Tên của bạn" 

git config --global user.email "email@example.com"
  • --global: Áp dụng cho tất cả các dự án trên máy tính.

2. Khởi tạo và sao chép kho lưu trữ

git init: Khởi tạo một kho lưu trữ Git mới trong thư mục hiện tại.

git init
  • Sau khi chạy lệnh này, thư mục hiện tại sẽ trở thành một kho lưu trữ Git.

git clone: Sao chép một kho lưu trữ Git từ xa về máy tính của bạn.

git clone <url>
  • Thay <url> bằng đường dẫn đến kho lưu trữ Git từ xa (ví dụ: trên GitHub).

3. Trạng thái và nhật ký

git status: Kiểm tra trạng thái của kho lưu trữ, xem có thay đổi nào chưa được commit.

git status
  • Hiển thị các tệp đã thay đổi, tệp chưa được thêm vào vùng chuẩn bị (staging area), và các tệp đã sẵn sàng để commit.

git log: Xem lịch sử các commit trong kho lưu trữ.

git log
  • Hiển thị danh sách các commit với thông tin như mã commit, tác giả, ngày tháng, và thông điệp commit.

4. Thêm và xóa tệp

git add: Thêm tệp vào vùng chuẩn bị (staging area), chuẩn bị cho việc commit.

git add <tên-tệp> 
git add .
  • <tên-tệp>: Thêm một tệp cụ thể.
  • . : Thêm tất cả các thay đổi.

git rm: Xóa tệp khỏi kho lưu trữ và vùng làm việc.

git rm <tên-tệp>
  • Thay <tên-tệp> bằng tên của tệp muốn xóa.

5. Commit và đẩy thay đổi

git commit: Lưu các thay đổi từ vùng chuẩn bị vào kho lưu trữ cục bộ.

git commit -m "Thông điệp commit"
  • -m "Thông điệp commit": Gán một thông điệp cho commit.

git push: Đẩy các thay đổi từ kho lưu trữ cục bộ lên kho lưu trữ từ xa.

git push <tên-remote> <tên-nhánh>
  • <tên-remote> thường là origin (tên mặc định của kho lưu trữ từ xa).
  • <tên-nhánh> thường là main hoặc master (tên nhánh chính).

6. Kéo và hợp nhất thay đổi

git pull: Kéo các thay đổi từ kho lưu trữ từ xa và hợp nhất vào nhánh hiện tại.

git pull <tên-remote> <tên-nhánh>
  • Tương tự như git fetch + git merge.

git merge: Hợp nhất nhánh khác vào nhánh hiện tại.

git merge <tên-nhánh>
  • Thay <tên-nhánh> bằng tên của nhánh muốn hợp nhất.

7. Quản lý nhánh

git branch: Liệt kê, tạo hoặc xóa nhánh.

git branch 
git branch <tên-nhánh>
git branch -d <tên-nhánh>
  • git branch: Liệt kê tất cả các nhánh.
  • git branch <tên-nhánh>: Tạo một nhánh mới.
  • git branch -d <tên-nhánh>: Xóa một nhánh.

git checkout: Chuyển đổi giữa các nhánh hoặc khôi phục tệp.

git checkout <tên-nhánh> 
git checkout <commit-id>
  • git checkout <tên-nhánh>: Chuyển sang nhánh khác.
  • git checkout <commit-id>: Khôi phục tệp về trạng thái của commit cụ thể.

git switch: Chuyển đổi giữa các nhánh (cách mới hơn và đơn giản hơn so với git checkout).

git stash

8. Stash thay đổi

git stash: Lưu tạm thời các thay đổi chưa commit.

git stash apply
  • Lưu các thay đổi hiện tại để bạn có thể chuyển nhánh mà không cần commit.

git stash apply: Áp dụng các thay đổi đã lưu trữ.

git stash apply

9. Kiểm tra sự khác biệt

git diff: Hiển thị sự khác biệt giữa các commit, nhánh, tệp, v.v.

git diff
  • Hiển thị những thay đổi chưa được thêm vào vùng chuẩn bị.

Các lệnh này sẽ giúp bạn bắt đầu với Git và làm việc hiệu quả với kho lưu trữ mã nguồn của mình.

Bài viết cùng chuyên mục

hatonet

Hướng dẫn cài và sử dụng vue-object-to-formdata cho dự án nuxtjs

today 11/12/2024 22:15
vue-object-to-formdata là một thư viện JavaScript được thiết kế để chuyển đổi một đối tượng JavaScript (Object) thành đối tượng FormData. Đây là một đối tượng có thể dễ dàng sử dụng trong các yêu cầu HTTP để gửi dữ liệu, đặc biệt là khi bạn cần gửi dữ liệu như là một phần của biểu mẫu (form), ví dụ: khi upload file hoặc gửi dữ liệu dưới dạng multipart/form-data.
Xem thêm arrow_right_alt
hatonet

Hướng dẫn cài đặt và sử dụng v-tooltip trong project nuxt js

today 04/12/2024 21:34
v-tooltip là một thư viện Vue.js nhẹ, dễ sử dụng, giúp tạo ra các tooltip (hộp thông báo khi người dùng di chuột qua một phần tử) trong các ứng dụng Vue. Tooltip là một yếu tố giao diện người dùng (UI) thông báo hoặc giải thích ngắn gọn về một đối tượng khi người dùng hover (di chuột) hoặc focus vào phần tử đó.
Xem thêm arrow_right_alt
hatonet

Hướng dẫn cài đặt và sử dụng thư viện Elementjs nuxtjs

today 28/11/2024 23:14
Thư viện Element UI là một bộ thư viện giao diện người dùng mạnh mẽ, cung cấp nhiều thành phần (components) tùy chỉnh sẵn, giúp bạn xây dựng giao diện ứng dụng dễ dàng và nhanh chóng. Đối với Nuxt.js , bạn có thể tích hợp và sử dụng Element UI một cách đơn giản. Dưới đây là hướng dẫn từng bước.
Xem thêm arrow_right_alt

Việc làm tại Hatonet

Actively collaborate with team leads to develop a cohesive vision for each Agent that ensures audience resonance, and successful integration with the existing cast through personality, visual aesthetics, and gameplay Lead, manage, and mentor a high performing, healthy, and collaborative concept art team Work with production to ensure your team’s timely and successful delivery of products Maintain and contribute to artifacts that inform, align, and empower teams to successfully create character concept art in the VALORANT style

  • GWS
  • Trưởng phòng IT
Onsite
vietnam_flag