Git là gì? Các lệnh git cơ bản mà mọi lập trình viên nên biết

Git là gì? Các lệnh git cơ bản mà mọi lập trình viên nên biết

git là gì?

git là hệ thống kiểm soát phiên bản phân tán (hệ thống kiểm soát phiên bản phân tán – dvcs) , là một trong những hệ thống kiểm soát phiên bản phân tán phổ biến nhất hiện nay. git cung cấp cho mỗi nhà phát triển kho lưu trữ của riêng họ ( kho lưu trữ ) chứa toàn bộ lịch sử thay đổi.

Hệ thống kiểm soát phiên bản

Bạn Đang Xem: Git là gì? Các lệnh git cơ bản mà mọi lập trình viên nên biết

– vcs là gì?

vcs là viết tắt của hệ thống kiểm soát phiên bản hệ thống kiểm soát phiên bản phân phối mã nguồn mở . vcs sẽ lưu trữ tất cả các tệp trong toàn bộ dự án và ghi lại toàn bộ lịch sử thay đổi tệp. Mỗi thay đổi đã lưu được chuyển đổi thành một phiên bản.

vcs là một hệ thống cho phép người lập trình lưu trữ các phiên bản khác nhau của mã nguồn được sao chép ( clone ) từ một kho lưu trữ mã nguồn duy nhất ( kho lưu trữ ), mỗi phiên bản thứ cấp sẽ thay đổi thành cục bộ mã nguồn có thể được cam kết ( cam kết ) và sau đó được tải lên máy chủ nơi đặt kho lưu trữ chính.

Nếu họ có quyền truy cập vào một máy tính khác, họ cũng có thể sao chép mã nguồn từ kho lưu trữ hoặc sao chép lại một tập hợp các thay đổi gần đây trên một máy tính khác.

Người lập trình có thể xem danh sách các thay đổi của tệp, chẳng hạn như dòng thời gian của phiên bản. Mỗi phiên bản bao gồm: nội dung tệp thay đổi, ngày giờ thay đổi, ai thực hiện thay đổi, lý do thay đổi hoặc tên phiên bản …

& gt; & gt; & gt; Tìm công việc git được trả lương cao tại topdev

vcs hoạt động như thế nào?

  1. Lưu lịch sử phiên bản của bất kỳ thay đổi nào của dự án. Giúp xem lại các thay đổi hoặc quay lại sau.
  2. Việc chia sẻ mã trở nên dễ dàng hơn, người lập trình có thể đặt nó ở chế độ công khai với bất kỳ ai hoặc chỉ ở chế độ riêng tư đối với những người được ủy quyền nhất định mới có thể truy cập và lấy mã.
  3. Đây là vcs và git cũng ghi nhớ toàn bộ lịch sử thay đổi đối với mã nguồn trong dự án. Việc chỉnh sửa file theo chương trình, thêm dòng code ở đâu, xóa dòng code ở dòng nào … đều được git ghi lại và lưu trữ.

    git hoạt động như thế nào?

    Sự khác biệt chính giữa git và bất kỳ vcs ​​nào khác (bao gồm cả subversion …) là cách git xem dữ liệu của nó.

    Về mặt khái niệm, hầu hết các hệ thống khác lưu trữ thông tin dưới dạng danh sách thay đổi dựa trên tệp. Các hệ thống này (cvs, subversion, perforce, bazaar, v.v.) coi thông tin chúng lưu trữ như một tập hợp các tệp và thực hiện các thay đổi đối với từng tệp theo thời gian.

    git không xem xét hoặc lưu trữ dữ liệu của nó theo cách này. Thay vào đó, git xử lý thông tin được lưu trữ như một tập hợp các ảnh chụp nhanh – ảnh chụp nhanh của toàn bộ nội dung của tất cả các tệp tại một thời điểm nhất định.

    Mỗi khi bạn “cam kết”, git “tìm nạp” và tạo một ảnh chụp nhanh tham chiếu đến ảnh chụp nhanh đó. Để hiệu quả, nếu tệp không thay đổi, git sẽ không lưu trữ lại tệp – chỉ là một liên kết đến cùng một tệp với tệp trước đó mà nó đã lưu trữ. Đây là cách git xem dữ liệu của nó:

    Đây là điểm khác biệt quan trọng giữa git và hầu hết các vcs khác. Nó khiến git phải suy nghĩ lại hầu hết mọi khía cạnh của kiểm soát phiên bản mà hầu hết các hệ thống khác đã sao chép từ thế hệ trước. Điều này làm cho git giống như một hệ thống tệp nhỏ mà trên đó một số công cụ rất mạnh được xây dựng, thay vì vcs đơn giản.

    Những lợi ích của git là gì?

    Các dự án thực tế thường có nhiều lập trình viên làm việc song song. Vì vậy, một hệ thống kiểm soát phiên bản như git là cần thiết để đảm bảo rằng không có xung đột mã giữa các lập trình viên.

    Ngoài ra, các yêu cầu trong các dự án như vậy thường xuyên thay đổi. Vì vậy, hệ thống kiểm soát phiên bản cho phép các nhà phát triển khôi phục và quay lại các phiên bản mã cũ hơn.

    Cuối cùng, nhiều dự án liên quan đến cùng một cơ sở mã đôi khi được chạy đồng thời. Trong trường hợp này, khái niệm rẽ nhánh trong git là rất quan trọng.

    • Dễ sử dụng, nhanh, gọn, lẹ và rất an toàn.
    • Kết hợp dễ dàng các nhánh để làm cho quy trình mã hóa nhóm dễ dàng hơn.
    • Chỉ cần sao chép mã nguồn từ kho lưu trữ hoặc sao chép phiên bản đã thay đổi từ kho lưu trữ hoặc sao chép một nhánh từ kho lưu trữ và bạn có thể làm việc mọi lúc, mọi nơi.
    • Việc triển khai sản phẩm của bạn không thể dễ dàng hơn.
    • Các điều khoản git quan trọng

      1. Chi nhánh

      Branch (chi nhánh) có nghĩa là phiên bản cụ thể của kho lưu trữ được phân tách từ dự án chính của bạn.

      nhánh cho phép bạn theo dõi các thay đổi thử nghiệm mà bạn đã thực hiện đối với kho lưu trữ và hoàn nguyên về các phiên bản trước đó.

      2. Gửi

      Một cam kết thể hiện một điểm cụ thể trong lịch sử của dự án. Sử dụng lệnh cam kết kết hợp với lệnh git add để cho git biết những thay đổi nào cần lưu vào kho lưu trữ cục bộ.

      3. Thanh toán

      Sử dụng thanh toán git để chuyển đổi giữa các chi nhánh. Chỉ cần nhập git checkout theo sau là tên của chi nhánh bạn muốn chuyển đến hoặc nhập git checkout master để quay lại chi nhánh chính.

      4. nhận được

      Lệnh git fetch tìm nạp một bản sao và tải tất cả các tệp nhánh xuống máy tính của bạn. Sử dụng nó để lưu các thay đổi mới nhất vào kho lưu trữ của bạn. Nó có thể lấy nhiều nhánh cùng một lúc.

      5. Ngã ba

      Một nhánh là một bản sao của kho lưu trữ. Các nhà phát triển thường sử dụng fork để kiểm tra các thay đổi mà không ảnh hưởng đến dự án chính.

      6. Đầu

      Cam kết ở đầu nhánh được gọi là đầu. Nó đại diện cho cam kết mới nhất của kho lưu trữ mà bạn hiện đang làm việc.

      7. Chỉ mục

      Bất cứ khi nào bạn thêm, xóa hoặc thay đổi tệp, tệp đó vẫn nằm trong chỉ mục cho đến khi bạn sẵn sàng thực hiện các thay đổi của mình. Nó giống như khu vực dàn dựng của git. Sử dụng lệnh git status để xem nội dung của chỉ mục.

      staging là một bước trước khi commit trong git.

      Cam kết trong git được thực hiện theo hai bước: cam kết theo giai đoạn và thực tế. Miễn là thay đổi nằm trong vùng phân đoạn, git cho phép bạn chỉnh sửa nó theo ý muốn (thay thế tệp phân vùng bằng các phiên bản khác của tệp dàn, loại bỏ các thay đổi trong phân đoạn, v.v.)

      Các thay đổi được đánh dấu bằng màu xanh lá cây đã sẵn sàng thực hiện, trong khi các thay đổi được đánh dấu bằng màu đỏ vẫn chưa được cam kết.

      8. Thạc sĩ

      master là nhánh chính cho tất cả các kho lưu trữ của bạn. Nó phải bao gồm những thay đổi và cam kết gần đây.

      9. Hợp nhất

      Xem Thêm : Pussy là gì

      Lệnh git merge được kết hợp với một pull request để thêm các thay đổi từ nhánh này sang nhánh khác.

      10. Nguồn gốc

      origin là phiên bản mặc định của kho lưu trữ. origin cũng được sử dụng như một bí danh hệ thống để giao tiếp với master branch.

      git push origin master đẩy các thay đổi cục bộ đến nhánh chính.

      11. Kéo

      Một yêu cầu kéo đại diện cho một thay đổi được đề xuất đối với nhánh chính. Nếu bạn làm việc với một nhóm, bạn có thể tạo các yêu cầu kéo để yêu cầu người bảo trì kho lưu trữ xem xét các thay đổi và hợp nhất chúng.

      Lệnh kéo

      git được sử dụng để thêm các thay đổi vào nhánh chính.

      12. Đẩy

      Lệnh git push được sử dụng để cập nhật nhánh từ xa với những thay đổi mới nhất mà bạn đã cam kết.

      13. Rebase

      Lệnh git rebase cho phép bạn tách, di chuyển hoặc xóa các cam kết. Nó cũng có thể được sử dụng để kết hợp hai nhánh khác nhau.

      14. Điều khiển từ xa

      Điều khiển từ xa là một bản sao của một nhánh. Điều khiển từ xa giao tiếp ngược dòng với nhánh gốc của chúng và các điều khiển từ xa khác trong kho lưu trữ.

      15. Kho lưu trữ

      Kho lưu trữ git chứa tất cả các tệp dự án của bạn, bao gồm các nhánh, thẻ và cam kết.

      16. Stash

      Lệnh git stash sẽ loại bỏ các thay đổi trong chỉ mục và lưu trữ chúng sau đó.

      Sẽ rất hữu ích nếu bạn muốn tạm dừng công việc đang làm và làm việc khác. Bạn không thể lưu trữ nhiều hơn một đột biến cùng một lúc.

      17. Thẻ

      Thẻ

      cung cấp cho bạn một cách để theo dõi các cam kết quan trọng. Các thẻ nhẹ chỉ hoạt động như con trỏ, trong khi các thẻ chú thích được lưu trữ dưới dạng các đối tượng đầy đủ.

      19.Upstream

      Trong ngữ cảnh của git, ngược dòng là nơi bạn đẩy các thay đổi của mình, thường là nhánh chính.

      Để biết thêm chi tiết về thuật ngữ liên quan đến git, hãy xem phần tham khảo tài liệu git.

      Các lệnh git cơ bản

      1) cấu hình git

      Tác dụng: Đặt tên người dùng và email của bạn trong hồ sơ chính. Cách sử dụng: Để kiểm tra tên email và nhập cấu hình, hãy sử dụng git config – global user.name git config – global user.email . Đặt email hoặc tên mới git config – global user.name = “hai nguyen” git config – global user.email = “hainguyen@gmail.com”

      2) git init

      Tác dụng: Tạo kho lưu trữ git với 1 dự án mới hoặc hiện có.

      Cách sử dụng: git init trong thư mục gốc của dự án.

      3) bản sao git

      Tác dụng: Sao chép kho lưu trữ 1 git từ nguồn từ xa.

      Cách sử dụng: git clone & lt;: clone git url: & gt;

      4) trạng thái git

      Tác dụng: Kiểm tra trạng thái của các tệp bạn đã thay đổi trong thư mục làm việc. Ví dụ: tất cả các thay đổi cuối cùng kể từ lần cam kết cuối cùng.

      Để sử dụng: git status trong thư mục làm việc.

      5) git add

      Tác dụng: Thêm các thay đổi cho giai đoạn / chỉ mục trong thư mục làm việc.

      Cách sử dụng: git add

      6) git cam kết

      Tác dụng: commit thể hiện hành động của git để lưu ảnh chụp nhanh các thay đổi trong thư mục làm việc. Và các tệp và thư mục đã thay đổi phải nằm trong khu vực dàn dựng. Với mỗi lần cam kết, lịch sử chỉnh sửa của mã được lưu cùng với tên và địa chỉ email của người cam kết. Cũng trong git, bạn cũng có thể khôi phục một tệp trong lịch sử cam kết của nó để tách thành một nhánh khác, vì vậy bạn có thể dễ dàng khôi phục các thay đổi trước đó.

      Cách sử dụng: git commit -m “Đây là thông báo, bạn sử dụng nó để ghi lại các thay đổi để dễ dàng xem xét lại sau này”

      7) git push / git pull

      Tác dụng: Đẩy hoặc kéo các thay đổi đối với điều khiển từ xa. Nếu bạn đã thêm và cam kết thay đổi và bạn muốn đẩy nó hoặc điều khiển từ xa của bạn đã được cập nhật và bạn đã áp dụng tất cả những thay đổi đó cho mã của mình.

      Xem Thêm : PS là gì? Sử dụng PS như thế nào để phù hợp với từng hoàn cảnh?

      Cách sử dụng: git pull <: remote: & gt; & lt;: branch: & gt; git push & lt;: remote: & gt; & lt;: branch: & gt;

      8) nhánh git

      Tác dụng: Liệt kê tất cả các nhánh.

      Cách sử dụng: git branch hoặc git branch -a

      9) thanh toán bằng git

      Hiệu ứng: chuyển sang nhánh khác

      Cách sử dụng: git checkout & lt ;: branch: & gt; hoặc ** _ git checkout -b & lt ;: branch: & gt; nếu bạn muốn tạo và di chuyển đến một chi nhánh mới.

      10) git stash

      Tác dụng: Lưu các thay đổi bạn không muốn thực hiện ngay lập tức.

      Cách sử dụng: git stash trong thư mục làm việc của bạn.

      11) hợp nhất git

      Tác dụng: Hợp nhất 2 nhánh với nahu.

      Cách sử dụng: Nhập nhánh bạn muốn hợp nhất và sử dụng git merge & lt;: branch_ban_muon_merge: & gt;

      12) đặt lại git

      Tác dụng: Bạn đã bao gồm một tệp trong khu vực tổ chức, nhưng bây giờ bạn muốn xóa nó khỏi đây, vì vậy bạn không cần phải cam kết.

      Cách sử dụng: git reset head_filename

      13) git remote

      Tác dụng: Kiểm tra điều khiển từ xa / nguồn nào bạn có hoặc thêm các điều khiển từ xa khác

      Cách sử dụng: git remote để kiểm tra và liệt kê. và git remote add & lt;: remote_url: & gt; để thêm.

      14) git add

      Hiệu ứng: bao gồm một tệp trong khu vực tổ chức

      Cách sử dụng: git thêm tên_tệp hoặc nếu bạn muốn thêm tất cả các tệp của một thư mục thì git thêm tất cả

      Các đề xuất về việc sử dụng git thường xuyên

      1. git cheat sheet

        Bạn không nhớ tất cả các lệnh, bây giờ bạn nên sử dụng bảng gian lận git để dễ dàng tìm thấy các lệnh git bạn cần:

        • https://rogerdudler.github.io/git-guide/
        • https://git-scm.com/docs/gittutorial
        • https://gitsheet.wtf/
        • http://ndpsoftware.com/git-cheatsheet.html
        • https://gitexplorer.com/
        • 2. Nên gửi thường xuyên

          Chia nhỏ các cam kết của bạn và cam kết thường xuyên nhất có thể. Điều này giúp các thành viên trong nhóm dễ dàng tích hợp công việc của họ hơn mà không gặp phải xung đột hợp nhất.

          3. Kiểm tra và gửi

          Không bao giờ cam kết cho đến khi quá trình hoàn tất. Các thay đổi của bạn cần được kiểm tra trước khi chia sẻ với người khác.

          4. Viết nhận xét khi gửi

          Hãy cho các thành viên khác trong nhóm biết những thay đổi nào bạn đã thực hiện bằng cách viết ghi chú khi bạn cam kết. Vui lòng mô tả càng nhiều càng tốt.

          5. Kiểm tra một nhánh khác

          Sử dụng các nhánh để giúp bạn theo dõi các dòng phát triển khác nhau.

          6. Thực hiện theo quy trình git

          Bạn nên chọn làm theo quy trình git để đảm bảo rằng toàn bộ nhóm của bạn làm như vậy.

          Hy vọng bài viết này sẽ cung cấp cho bạn nhiều thông tin hữu ích về git là gì? Và các lệnh git cơ bản mà mọi lập trình viên nên biết. Blog topdev sẽ tổng hợp thêm nhiều kiến ​​thức bổ ích cho bạn đọc. Tôi hy vọng các bạn sẽ luôn ủng hộ và yêu mến chúng tôi

          Đừng quên tham khảo những việc làm hcm, Hà Nội và Đà Nẵng hấp dẫn tại đây !

Nguồn: https://anhvufood.vn
Danh mục: Kinh Nghiệm

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *