paint-brush
Mở khóa IaC Phần 4: Terraform & Githubtừ tác giả@chrisray
1,568 lượt đọc
1,568 lượt đọc

Mở khóa IaC Phần 4: Terraform & Github

từ tác giả Chris Ray5m2024/04/09
Read on Terminal Reader

dài quá đọc không nổi

Khi còn là một đứa trẻ 12 tuổi, quá trình kiểm soát phiên bản của tôi.... thật tệ. Tôi sẽ làm mất mã nguồn, rồi một tuần sau quay lại và tạo lại một tệp mới. Giải pháp cho vấn đề này là Git hoặc trong trường hợp này cụ thể là GitHub. Bây giờ chúng ta sẽ triển khai Terraform nhỏ này từ Phần 3 và đưa nó vào GitHub bằng cách sử dụng một số lệnh Git cơ bản.
featured image - Mở khóa IaC Phần 4: Terraform & Github
Chris Ray HackerNoon profile picture

Sử dụng Git & GitHub để lưu mã của bạn

Khi còn rất trẻ, bằng cách nào đó, tôi tình cờ bước chân vào thế giới C++ và tạo ra chương trình "Hello World" được yêu thích lâu năm. Tôi đã biên dịch nó, thực thi nó và nhận được cửa sổ bật lên xác nhận đã đột phá thành công vào lĩnh vực "lập trình".


Tuy nhiên, tôi chưa bao giờ đi xa hơn thế bởi vì khi còn là một đứa trẻ 12 tuổi, quy trình kiểm soát phiên bản của tôi... thật tệ. Tôi sẽ làm mất mã nguồn, rồi một tuần sau quay lại và tạo lại một tệp mới. Tôi thử nghiệm và đạt được tiến bộ khi thực hiện những việc nhỏ với C++, nhưng mỗi lần tôi làm như vậy, về cơ bản mọi việc đều phải bắt đầu lại từ đầu vì tôi quá tệ trong việc duy trì quyền kiểm soát mã nguồn của mình.

MRW Tôi nhận ra mã nguồn đã biến mất. Lại.


Không có gì có thể giết chết tham vọng làm việc với mã của bạn nhanh hơn việc đánh mất tất cả tiến trình của bạn mỗi khi bạn 'xây dựng'. Giải pháp cho vấn đề này là Git, hoặc trong trường hợp này cụ thể là GitHub. Bây giờ chúng ta sẽ triển khai Terraform nhỏ này từ Phần 3 và đưa nó vào GitHub bằng cách sử dụng một số lệnh Git cơ bản trên terminal tích hợp trong VSCode (có một tiện ích mở rộng VSCode Github để thực hiện việc này, nhưng tốt nhất là bạn nên hiểu lệnh Git là gì được sử dụng để hoàn thành loại nhiệm vụ này trước khi dựa vào tiện ích mở rộng để thực hiện việc đó cho bạn).


Bạn cũng có thể sử dụng thiết bị đầu cuối gốc của hệ điều hành (CMD, Powershell, ZSH, bất cứ thứ gì) cho các bước này.


  1. Mở thiết bị đầu cuối trong VSCode bằng cách nhấn "CTRL + `" (đó là dấu tích ngược, phím nhỏ ở bên trái của "1")


  2. Trong thiết bị đầu cuối mới này, hãy xác minh rằng bạn đang ở đúng thư mục tệp (theo mặc định). Trong bước tiếp theo, chúng tôi sẽ khởi tạo kho lưu trữ Git trong thư mục này và bắt đầu theo dõi các thay đổi đối với mã của bạn. Nếu đây không phải là thư mục chứa mã của bạn, hãy thay đổi nó thành thư mục chính xác.


  3. Bây giờ chúng tôi muốn khởi tạo Git; để làm loại này: git init

    Git hiện đang chạy trong thư mục này, tuy nhiên, nó không theo dõi bất kỳ tệp nào (hoặc mã trong các tệp đó).


  4. Git có thể sử dụng kho mã cục bộ cũng như kho mã từ xa (“repo”). Trong hầu hết các cài đặt chuyên nghiệp, bạn sẽ sử dụng kho lưu trữ từ xa với dịch vụ như Github, Gitlab, Bitbucket, v.v. Chúng tôi cần cho Git biết nơi gửi mã này mà chúng tôi sắp theo dõi. Để làm điều đó, chúng tôi sử dụng git remote add .


    1. Cú pháp cho việc này trông như thế này: git remote add origin https://github.com/owner/repo_name.git

      1. phá vỡ điều này: git remote add origin hướng dẫn git thêm một kho lưu trữ từ xa có tên là Origin Origin và sử dụng URL sau nó làm đích cho kho lưu trữ từ xa này


    2. Trong trường hợp của tôi, tôi đã tạo một kho lưu trữ mới (trống) trên GitHub trong tài khoản của mình nên nó trông như thế này: git remote add origin https://github.com/wellmadeoldfashioned/YT-single-server-arch-AWS.git

  5. Bây giờ, chúng ta có thể chuyển sang yêu cầu git “theo dõi” các tập tin. Để theo dõi một tệp cụ thể, chúng tôi có thể thực hiện: git add [filename] HOẶC để theo dõi mọi thứ trong kho lưu trữ hiện tại, bạn có thể thực hiện: git add . - tốt nhất là bạn nên rõ ràng và thêm từng tệp riêng lẻ chứ không theo dõi tất cả các tệp trong thư mục cục bộ.


    1. Bây giờ hãy thêm tệp địa hình của chúng tôi; đưa ra lệnh sau để thực hiện điều đó: git add main.tf

    2. Tại thời điểm này, tệp hoặc các tệp bạn đã thêm ở bước trước hiện đã được "phân loại" - tất cả điều này có nghĩa là bạn đã yêu cầu Git "lấy một bản sao của các tệp này như hiện tại và sẵn sàng gửi các bản sao đến kho lưu trữ". ” (trong trường hợp này là một kho lưu trữ từ xa: Github).


  6. Sau khi các tệp được sắp xếp, chúng ta cần tạo một cam kết - hãy coi nó giống như một điểm kiểm tra trong tiến trình phát triển của bạn, nơi bạn có thể thêm một thông báo ngắn mô tả điểm kiểm tra.


    1. Để thực hiện một cam kết, chúng tôi sử dụng git commit -m “[message_goes_here]” - theo truyền thống, trong lần cam kết đầu tiên, bạn sử dụng một cái gì đó như “cam kết ban đầu”, nhưng không có quy tắc nào quy định nội dung trong tin nhắn. Nói chung, bạn muốn ngắn gọn và mô tả. Ví dụ: nếu đây là một cam kết cập nhật tên biến, chúng ta sẽ chỉ nói rằng git commit -m “updated AMI variable to XYZ”


    2. Vấn đề bây giờ: git commit -m “initial commit” - bạn sẽ nhận được một vài dòng phản hồi từ Git giống như thế này:

  7. Việc này gần như đã hoàn tất nhưng vẫn chưa hoàn toàn. Chúng tôi đã khởi tạo Git, thêm kho lưu trữ từ xa, hướng dẫn Git theo dõi một tệp cụ thể và thực hiện cam kết với kho lưu trữ từ xa, nhưng chúng tôi vẫn chưa gửi cam kết đến kho lưu trữ từ xa.


    1. Để gửi cam kết ("điểm kiểm tra" mà chúng tôi đã tạo ở trên bằng lệnh cam kết Git), bạn cần phát hành git push [remote-repo-name] [local-branch-name]


    2. Để tìm ra tên repo từ xa, chúng ta cần quay lại bước 4 để xem chúng ta đã đặt tên gì cho nó, trong trường hợp này là “origin”. Để tìm ra tên chi nhánh cục bộ, bạn có thể đưa ra git branch , HOẶC nếu bạn không thay đổi nó từ cài đặt mặc định, nó sẽ là “chính” cho nhánh chính.

    3. Như bạn có thể thấy, chúng tôi thực sự đang làm việc trên nhánh chính tại địa phương. Vì vậy, để đẩy mã lên Github, chúng ta cần phát hành: git push origin master

  8. Kiểm tra bên GitHub, chúng ta có thể thấy cam kết tôi vừa gửi.

    Cũng như những thay đổi cam kết thực tế:


Hy vọng điều này sẽ giúp bạn bắt đầu với Git và GitHub. Trong bản demo hoạt động này, có một số phím tắt được sử dụng vì mục đích đơn giản (như không tạo nhánh mới để bảo toàn nhánh chính, không hợp nhất các thay đổi, phân nhánh, v.v.), nhưng kiến thức này là nền tảng để học những điều đó.


Khi bạn đã cảm thấy thoải mái khi sử dụng Git theo cách này, bạn nên chuyển sang làm việc trên các nhánh khác nhau, hiểu “HEAD” là gì và cách thao tác với nó, phân nhánh các kho lưu trữ, hợp nhất các thay đổi, v.v.