2012-06-13 65 views
36

Tôi đã chia hai một kho lưu trữ riêng (một dự án iPhone) như sau:Làm thế nào để sử dụng lệnh terminal với Github?

cd nameofdirectory 
git init 
git clone forkedURL 

Bây giờ tôi muốn đẩy những thay đổi được thực hiện bởi tôi đến kho lưu trữ chia hai của tôi để các quản trị viên chính có thể xem lại mã bằng văn bản của tôi và hợp nhất nó với kho lưu trữ chính.

Làm cách nào tôi có thể đẩy các thay đổi được thực hiện bởi tôi đến kho lưu trữ được chia sẻ bằng thiết bị đầu cuối trên MacOS?

Trả lời

83

Bạn không thể đẩy vào kho của người khác. Điều này là do đẩy vĩnh viễn được mã vào kho lưu trữ của họ, mà không phải là mát mẻ.

Những gì bạn nên làm, là yêu cầu họ để kéo từ kho lưu trữ của bạn. Điều này được thực hiện trong GitHub bằng cách vào kho lưu trữ khác và gửi một "yêu cầu kéo".

Có một bài viết rất nhiều thông tin về sự giúp đỡ của GitHub bản thân: https://help.github.com/articles/using-pull-requests


Để tương tác với kho lưu trữ của riêng bạn, bạn có các lệnh sau. Tôi đề nghị bạn bắt đầu đọc trên Git nhiều hơn một chút cho những hướng dẫn này (rất nhiều tài liệu trực tuyến).

Để thêm tập tin mới vào kho hoặc thêm các tập tin đã thay đổi đến khu vực tổ chức:

$ git add <files> 

Để cam kết họ:

$ git commit 

Để cam kết unstaged nhưng file đã thay đổi:

$ git commit -a 

Để đẩy tới kho lưu trữ (giả sử origin):

$ git push origin 

chỉ Để đẩy một trong những chi nhánh của bạn (nói master):

$ git push origin master 

Để lấy nội dung của kho lưu trữ khác (nói origin):

$ git fetch origin 

Để lấy chỉ một trong những chi nhánh (nói master):

$ git fetch origin master 

Để nhập một chi nhánh với các chi nhánh hiện tại (nói other_branch):

$ git merge other_branch 

Lưu ý rằng origin/master là tên của các chi nhánh bạn lấy ở bước trước đó từ origin.Do đó, việc cập nhật chi nhánh chủ của bạn từ nguồn gốc được thực hiện bởi:

$ git fetch origin master 
$ git merge origin/master 

Bạn có thể đọc về tất cả các lệnh trong trang hướng dẫn của họ (hoặc Linux của bạn hoặc trực tuyến), hoặc làm theo các GitHub giúp:

+0

Hi Shahbaj tôi cũng hỏi làm thế nào để đẩy những thay đổi để repo cá nhân của tôi ngã ba và không cho một số người khác repo :-) –

+0

@ Priyanshu, ah xấu của tôi. Tôi sẽ thêm thông tin đó. – Shahbaz

+0

điểm được chấp nhận Shahbaj :-) –

11
git add myfile.h 
git commit -m "your commit message" 
git push -u origin master 

nếu bạn không nhớ tất cả các file bạn cần cập nhật, sử dụng

git status 
+0

Cảm ơn Morgan .... Giả sử tên tập tin mà thay đổi trong mã được thực hiện là myfile.h sau đó là chính xác sau: git add myfile.h git commit -m "thông điệp cam kết của bạn" git push -u origin master –

+0

Tôi đã cập nhật ví dụ để bao gồm tên tệp của bạn. Bạn cũng có thể lặp lại "git add" cho mỗi tệp trước khi thực hiện hai tệp còn lại. – Morgan

+0

Ngoài ra, hãy chắc chắn viết một bản tóm tắt về những gì bạn đã thay đổi trong tập tin mà tôi đặt "thông điệp cam kết" của bạn. – Morgan

0

để thêm tất cả tập tin cùng một lúc, sử dụng git add -A

Để kiểm tra toàn bộ tình trạng git, sử dụng git log

Các vấn đề liên quan