Git推送(push)操作
在本文章教程中,我們將演示如何查看 Git 存儲庫的文件和提交文件記錄,並對存儲庫中的文件作修改和提交。
注意:在開始學習本教程之前,先克隆一個存儲庫,有關如何克隆存儲庫,請參考: http://www.yiibai.com/git/git\_clone\_operation.html
在前面的文章中,都在要本地編寫文件代碼和提交,維護管制自己的文件版本,然後這種「自娛自樂」的方式,意義不是很大,在這裏將介紹如何與其它的開發人員協同開發工作:每個開發人員都可以提交自己貢獻的代碼,並讓其他人看到和修改。
要協同多人一起工作,可通過修改操作將代碼文件最後一個確定版本提交,然後再推送變更。 推送(Push)操作將數據永久存儲到Git倉庫。成功的推動操作後,其他開發人員可以看到新提交的變化。
執行git log
命令查看提交的詳細信息。最後一次提交的代碼的提交ID是:51de0f02eb48ed6b84a732512f230028d866b1ea
,如下所示 -
$ git log
commit 51de0f02eb48ed6b84a732512f230028d866b1ea
Author: your_name <[email protected]>
Date: Fri Jul 7 23:04:16 2017 +0800
add the sum of a & b
commit be24e214620fa072efa877e1967571731c465884
Author: your_name <[email protected]>
Date: Fri Jul 7 18:58:16 2017 +0800
??mark
commit 5eccf92e28eae94ec5fce7c687f6f92bf32a6a8d
Author: your_name <[email protected]>
Date: Fri Jul 7 18:52:06 2017 +0800
this is main.py file commit mark use -m option
commit 6e5f31067466795c522b01692871f202c26ff948
Author: your_name <[email protected]>
Date: Fri Jul 7 18:42:43 2017 +0800
this is main.py file commit mark without use "-m" option
commit 290342c270bc90f861ccc3d83afa920169e3b07e
Author: Maxsu <[email protected]>
Date: Fri Jul 7 16:55:12 2017 +0800
Initial commit
在推送(push
)操作之前,如想要檢查文件代碼變化,可使用git show
命令指定提交ID來查看具體的變化。
$ git show 51de0f02eb48ed6b84a732512f230028d866b1ea
commit 51de0f02eb48ed6b84a732512f230028d866b1ea
Author: your_name <[email protected]>
Date: Fri Jul 7 23:04:16 2017 +0800
add the sum of a & b
diff --git a/main.py b/main.py
index 657c8d0..25eb22b 100644
--- a/main.py
+++ b/main.py
@@ -3,5 +3,9 @@
print ("Life is short, you need Python !")
-# this is a comment line
+a = 10
+
+b = 20
+c = a + b
+print("The value of c is ", c)
\ No newline at end of file
注意:每一行代碼前面的
-
號和+
號。-
號表示刪除,+
號表示添加。如下 -
-# this is a comment line
+a = 10
+
+b = 20
+c = a + b
+print("The value of c is ", c)
如果對上面的提交修改沒有疑義,則我們就可以將文件代碼推送到遠程存儲庫中,從而讓其它開發人員可看查看和修改這些代碼,現在就來看看怎麼提交這些寫好的代碼,使用以下命令 -
$ git push origin master
上述命令將產生以下結果:
$ git push origin master
Username for 'http://git.oschina.net': [email protected] <輸入帳號>
Password for 'http://[email protected]@git.oschina.net': <輸入登錄密碼>
Counting objects: 13, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (12/12), 1.20 KiB | 0 bytes/s, done.
Total 12 (delta 3), reused 0 (delta 0)
To http://git.oschina.net/yiibai/sample.git
290342c..51de0f0 master -> master
在上面命令中,需要您提提供( http://git.oschina.net )用戶名和密碼。
如上所示,現在代碼已經成功地提交到了遠程存儲庫( http://git.oschina.net )中了。要驗證提交的結果,遠程存儲庫中的內容是否是最後一次提交的信息,我們可以在另外一個空的目錄中或在另外一臺機器上使用 git clone
克隆出完整的文件代碼,例如,在目錄:E:\workspace
下執行以下命令 -
$ git clone http://git.oschina.net/yiibai/sample.git
Cloning into 'sample'...
remote: Counting objects: 15, done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 15 (delta 3), reused 0 (delta 0)
Unpacking objects: 100% (15/15), done.
Checking connectivity... done.
在執行上面命令後,打開文件: E:\workspace\sample\main.py
,其代碼內容如下 -
#!/usr/bin/python3
#coding=utf-8
print ("Life is short, you need Python !")
a = 10
b = 20
c = a + b
print("The value of c is ", c)
可以看到此文件與最後一個版本的內容一樣。