Đây là cách bạn chia sẻ công việc của mình trên kho lưu trữ từ xa git



Chia sẻ công việc cục bộ của bạn với nhóm trên một kho lưu trữ từ xa, đồng thời học cách quản lý nó trong khi theo dõi các thay đổi và luôn được đồng bộ hóa.

Tác phẩm của bạn tăng thêm giá trị khi được xuất bản và chia sẻ với thế giới (hoặc nhóm của bạn) !!!

Bắt đầu

Đi , như bạn đã biết, là công cụ lập phiên bản phổ biến nhất được sử dụng ngày nay để cửa hàng , theo dõiphiên bản bất kỳ loại nào dữ liệu .
Một số tính năng chính của git là tốc độ , phân phối Thiên nhiên, Bảo vệ , không đau phân nhánh và hợp nhất cùng với hợp tác làm việc giữa nhiều cộng tác viên.

Bắt đầu cuộc thảo luận của chúng tôi từ đây, hãy để chúng tôi tập trung vào cách git giúp bạn hợp tác và chia sẻ công việc của bạn với các đồng nghiệp để mọi người có thể làm việc trên cùng một mã đồng thời mà không làm hỏng dữ liệu của nhau.
Đây là nơi khái niệm về kho lưu trữ từ xa đi vào hình ảnh.
Tôi cho rằng bạn đã nắm vững nghệ thuật từ của bạn thư mục làm việc (hệ thống tập tin) vào Khu vực dàn dựng và cuối cùng cam kết nó với kho lưu trữ cục bộ (cơ sở dữ liệu).

Điều này truyền cảm hứng cho chúng tôi đẩy dữ liệu của mình lên cấp độ tiếp theo “Kho lưu trữ từ xa” để xuất bản nó trên kho lưu trữ từ xa.

Không phải dữ liệu của tôi đã được lưu trữ trong cơ sở dữ liệu git?

Vâng, đúng vậy! Tuy nhiên, như được chỉ ra trong sơ đồ bên dưới, dữ liệu của bạn vẫn ở trên cơ sở dữ liệu cục bộ sau bạn cam kết nó và chưa được chia sẻ với đồng nghiệp của bạn.
Kiến trúc 4 tầng
Bài viết này lấp đầy khoảng cách giữa việc thu thập dữ liệu của chúng tôi từ kho lưu trữ cục bộ và đưa nó đến lớp tiếp theo được gọi là kho lưu trữ từ xa .





Kho lưu trữ từ xa là gì

Cơ sở dữ liệu thông tin thu thập được lưu trữ ở một vị trí có thể chia sẻ với đồng đội của bạn bằng cách cho họ truy cập .
Nó được lưu trữ lý tưởng trên một đám mây hoặc trên một người phục vụ (cục bộ hoặc từ xa) trên internet hoặc mạng cục bộ của bạn.
Một kho lưu trữ từ xa cũng giống như kho lưu trữ git cục bộ của bạn, ngoại trừ việc nó thường được khai báo là một kho lưu trữ trống để không có một bản sao hoạt động như kho lưu trữ cục bộ của bạn.
Điều này được thực hiện để hạn chế các thay đổi trực tiếp được thực hiện trên kho lưu trữ từ xa.

Kho lưu trữ trần khái niệm là một lợi thế bổ sung cho một kho lưu trữ từ xa để giữ nó được bảo vệ và được sử dụng cho mục đích duy nhất là chia sẻ mã giữa các thành viên trong nhóm.
Điều này đạt được bằng cách khai báo kho lưu trữ từ xa là trống bằng cách sử dụng dấu ‘--chỉ‘Cờ tại thời điểm khởi tạo nó như một kho lưu trữ git.
Bằng cách làm như vậy, repo của bạn được tạo với siêu dữ liệu git hay nói cách khác là các đối tượng git được lưu trữ trong thư mục ‘.git’ ẩn và không có bản sao hoạt động nào có sẵn cho bất kỳ ai trực tiếp thêm dữ liệu.
Chỉ huy:git init --bare.

Với ý nghĩ này, trong tương lai, chúng ta sẽ thấy nhiều cách hơn để quản lý kho lưu trữ từ xa và cách chúng ta đồng bộ hóa công việc cục bộ của mình với điều khiển từ xa.



Tạo một kho lưu trữ từ xa

Đầu tiên và quan trọng nhất, bạn cần quyết định vị trí bạn muốn đặt repo từ xa của mình.
Có một số kho lưu trữ git dựa trên đám mây phổ biến như: GitLab , Cai Xô nhỏ , GitHub , PerforceCloudForge đến tên một vài.
Trong bài đăng này, tôi đang xem xét GitHub vì đây là nơi đầu tiên tôi bắt đầu lưu kho lưu trữ git của mình. Để bắt đầu, tất cả những gì bạn phải làm là đăng nhập vào tài khoản GitHub và sau đó tạo một kho lưu trữ mới , điều này tạo ra một URL trỏ đến repo từ xa này.


Git hỗ trợ các giao thức ssh, git, http và https để giải quyết một URL kho lưu trữ.

Ngoài ra, bạn cũng có thể đặt dự án của mình ở nơi khác, nói Máy chủ Linux làm theo các lệnh dưới đây-
cd $ HOME
mkdir remote_repo
cd remote_repo
git init --bare.

Gắn điều khiển từ xa vào máy cục bộ của bạn

Việc gắn điều khiển từ xa vào bản sao làm việc của bạn chỉ đơn giản có nghĩa là tạo trình xử lý tham chiếu con trỏ cho điều khiển từ xa hoặc đơn giản được gọi là “ điều khiển từ xa '.
Hãy chuyển sang dự án của tôi mà tôi muốn xuất bản-cd learningRemotes
Cú pháp:git thêm từ xa
Chỉ huy:git từ xa thêm nguồn gốc https://github.com/divyabhushan/learnRemotes.git

'Gốc mặc định tên tham chiếu cho trình xử lý từ xa. ” (tên từ xa phải là một số tên có liên quan)
Hãy xem cách đó có hiệu quả không bằng cách sử dụng lệnh:git từ xa

Nó đã làm :)

In cả URL từ xa cùng với tên:
git từ xa -v

Làm tốt! Bạn đã sẵn sàng với việc thiết lập kết nối với kho lưu trữ từ xa từ thư mục làm việc cục bộ của mình.

Thời gian để xuất bản

Cú pháp:git push --all --tags[-u | --set-up]
Chỉ huy:git push origin master

Vì vậy, bạn đọc cái này là 'Đẩy sự khác biệt của các cam kết đến nguồn gốc từ trang chủ cục bộ' .

Nếu bạn kiểm tra tài khoản GitHub của mình, các cam kết cục bộ (dữ liệu) của bạn phải được hiển thị ở đó-



Theo dõi chi nhánh

Như vậy, bạn đã xuất bản thành công tác phẩm của mình lên kho lưu trữ từ xa.
Tuy nhiên, điều quan trọng là bạn phải thiết lập chi nhánh địa phương của mình để theo dõi các thay đổi trên nhánh từ xa tự động.
Sử dụng '--set-uphoặc là-u‘Gắn cờ cùng với lệnh‘ git push ’
Chỉ huy:git push -u origin master

nhánh mã màu


Hãy tiếp tục tạo một cam kết mới trên nhánh 'chính' và xác minh cách git phát hiện ra nó-
Chỉ huy:trạng thái git


Hiển thị các nhánh theo dõi ở chế độ tiết
Chỉ huy:git chi nhánh -vv


Do đó, mỗi lần, có sự khác biệt về cam kết giữa kho lưu trữ cục bộ và từ xa của bạn trên nhánh được theo dõi, Git sẽ cho bạn biết.
Không phải là mát mẻ !!!

Những người khác sẽ kết nối với điều khiển từ xa của bạn như thế nào?

Nó là một miếng bánh khi bạn nhân bản một kho lưu trữ từ xa !!!

Vì vậy, sao chép từ một kho lưu trữ từ xa thực hiện 2 điều đầu tiên, tham khảo từ xa được thêm tự động và mặc định thứ hai chi nhánh được đặt thành theo dõi chi nhánh xa tự động.

Bước 1: Sao chép repo từ xa của bạn thành một người dùng khác-
Chỉ huy:git clone https://github.com/divyabhushan/learnRemotes.git developer2
cd developer2

Bước 2: Hiển thị điều khiển từ xa và url của nó
Chỉ huy:git từ xa -v


Bước 3: Liệt kê các nhánh theo dõi
Chỉ huy:git chi nhánh -vv


Niềm vui bắt đầu khi ‘developer2’ sẽ bắt đầu công việc của riêng mình và đẩy lên điều khiển từ xa.

Bạn có thể kết nối và đóng góp cho nhiều hơn một điều khiển từ xa kho lưu trữ từ một dự án đơn lẻ .

Xem các chi nhánh từ xa

Chỉ huy:chi nhánh git -r


Sử dụng tùy chọn ‘-a’ để in cả chi nhánh cục bộ và chi nhánh từ xa, hãy thử nó trong repo cục bộ của bạn sau khi tạo một vài chi nhánh cục bộ.

Những người khác đóng góp như thế nào cho điều khiển từ xa của bạn?

Thiết lập ban đầu
Nhà phát triển2 quyết định thay đổi một số điều như:
đến. Tạo nên một 'tính năng' mới từ cam kết mới nhất trên nhánh 'chính' và tạo cam kết mới trên nhánh 'tính năng'
Lệnh:
tính năng git checkout -b
echo 'tính năng cải tiến'> feature.txt
git thêm. && git commit -m 'cải tiến tính năng'

b. Tạo nên một nhánh ‘feature2’ khác với một cam kết cũ hơn trên nhánh ‘master’
Lệnh:
git checkout -b feature2 95651fb
echo 'feature2 được thêm vào'> feature2.txt
git thêm. && git cam kết -m 'Thêm thay đổi feature2'

Hãy hình dung các nhánh trên máy developer2 cùng với thông tin theo dõi:

Như bạn đã nhận thấy, các nhánh mới không được thiết lập để theo dõi các nhánh ở xa.

Đẩy các thay đổi sang điều khiển từ xa
Trước tiên, hãy để tôi đẩy nhánh ‘tính năng’ sang điều khiển từ xa bằng cờ ‘–set-ngược dòng hoặc -u’
Chỉ huy:tính năng gốc git push -u




Một nhánh mới sẽ được tạo trên điều khiển từ xa, nếu nó chưa tồn tại !!!

Tại thời điểm này, hãy liệt kê các nhánh từ xa bằng lệnh: ‘git branch -r’




Một cách khác để theo dõi chi nhánh từ xa
Hơn nữa, hãy đặt nhánh ‘feature2’ cũng để trỏ đến cùng một nhánh ‘feature’ trên điều khiển từ xa
Chỉ huy:git branch --set-up-to = origin / feature feature2



nhánh mã màu


Mẹo nhanh: Bạn có thể bỏ qua tên chi nhánh cục bộ nếu bạn đã ở trên chi nhánh đó, nói cách khác, chi nhánh cục bộ đã được đăng xuất.

Liệt kê các nhánh ở chế độ tiết một lần nữa, lệnh:git chi nhánh -vv



Lưu ý, cả hai nhánh cục bộ ‘feature’ và ‘feature2’ đều trỏ đến cùng một nhánh từ xa ‘feature’.

Luôn đồng bộ hóa với điều khiển từ xa - tìm nạp, kéo và đẩy

Hãy xem xét phần mà chi nhánh xa bạn đang theo dõi đã được cập nhật, sau đó thì sao?
Một đơn giản ‘trạng thái git‘Hoặc một‘thanh toán git‘Hoặc thậm chí là‘git chi nhánh -vvLệnh ‘cảnh báo chúng tôi với sự không phù hợp như vậy-



‘Developer2’ trước tiên phải cập nhật các tham chiếu và đối tượng cục bộ (‘ git fetch ‘) Và sau đó hợp nhất các thay đổi từ xa và cục bộ (‘ git merge ’).
Điều thú vị là bạn có thể thay thế hai lệnh này bằng một lệnh ‘git pull’.
Cú pháp:đi kéo

–Đối với nhánh chưa được theo dõi
Cú pháp: git pull [:]
Chỉ huy:git pull origin feature: feature2

–Cho chi nhánh được theo dõi
Cú pháp: git pull
Chỉ huy:git kéo




=> Trong thực tế, có thể có xung đột phát sinh ở giai đoạn này khi bạn kéo từ xa vì đơn giản, tôi đã tạo ra một thay đổi cam kết không xung đột.

Sau khi kéo ‘developer2’ (tìm nạp và hợp nhất), các thay đổi mới nhất từ ​​xa hiện phải xuất bản tác phẩm của riêng anh ấy-
Chỉ huy:git push origin HEAD: tính năng
Lưu ý: chi nhánh ngược dòng ‘tính năng’ không khớp với tên chi nhánh cục bộ ‘tính năng2’, bạn phải cung cấp tên đó một cách rõ ràng



Nhắc nhở : ‘HEAD’ là cam kết mới nhất trên nhánh ‘feature2’ cục bộ.

Khi nào sử dụng 'git fetch'?
Vào những lúc bạn có nhu cầu chỉ cần cập nhật đầu tham chiếu mà không thực sự tải xuống (kéo) từ điều khiển từ xa.
Hoặc khi các nhánh từ xa đã được sửa đổi / xóa khi cập nhật, bạn sẽ phải chạy lệnh tìm nạp với dấu ‘--prune' Lựa chọn.
Phương pháp hay nhất là bạn phải chạy lệnh ‘git fetch’ mỗi khi bắt đầu làm việc trên repo cục bộ của mình.

Quản lý từ xa

Cuối cùng, bạn sẽ muốn thực hiện một số công việc dọn dẹp nhà cửa như đổi tên hoặc xóa điều khiển từ xa và chi nhánh.
Đây cũng quan trọng như các lệnh trước đó.

Đổi tên điều khiển từ xa

Cú pháp:đổi tên từ xa git
Chỉ huy:git từ xa đổi tên snv_repo svn
Ví dụ: hãy xem xét một người quản lý dự án được liên kết với 3 dự án-


mô hình lập trình dựa trên pojo là gì

Xóa tham chiếu từ xa

Giả sử bạn không đồng bộ hóa với một kho lưu trữ từ xa nữa, bạn có khả năng xóa tham chiếu con trỏ đến nó.
Tuy nhiên, điều này sẽ không ảnh hưởng đến kho lưu trữ từ xa và công việc của những người khác.

Cú pháp:git remote remove
Chỉ huy:git remote loại bỏ proj1


Điều gì sẽ xảy ra nếu bạn có một nhánh cục bộ được đặt để theo dõi một nhánh từ kho lưu trữ ‘proj1’ đã bị xóa?
Chà, của bạn chi nhánh địa phương (và do đó công việc) là an toàn và vẫn hiện tại, chỉ là tham chiếu theo dõi từ xacấu hình cài đặt sẽ được tự động xóa

Xóa chi nhánh từ xa

Nói bạn tình cờ đẩy của bạn cá nhân công việc khó khăn trên một chi nhánh từ xa nhưng chưa muốn người khác kiểm tra nó -
Xóa nhánh ‘chưa hoàn thành công việc’ khỏi ‘svn’- từ xa
Chỉ huy:git chi nhánh -vv# Liệt kê các nhánh theo dõi từ xa



Cú pháp:git push --delete
Chỉ huy:git push - xóa svn chưa hoàn thành


Quanh co

Với điều này, chúng ta sẽ kết thúc bài viết này. Nếu bạn tìm thấy điều này “ Hướng dẫn ' liên quan, thích hợp, kiểm tra của Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu. Khóa đào tạo Chứng chỉ Edureka DevOps giúp người học có được kiến ​​thức chuyên môn về các quy trình và công cụ DevOps khác nhau như Puppet, Jenkins, Nagios và GIT để tự động hóa nhiều bước trong SDLC.