3.使用git提交項目到開源中國(gitosc)


1.提交地址

使用的是開源中國git倉庫 git.oschina.net
在windos環境下使用msysgit.

2.初始化化

username、email初始化

git config --global user.name "Your Name" 
git config --global user.email "your@email.com"//配置 
3.在git.oschina.net管理頁面創建項目

這個過程就不在這里詳細說明了,傻瓜化操作

4.提交項目代碼

切換本地項目根目錄(與.classpath和.project同級),右擊然后選擇Git Bash,

這是就會彈出Git命令行,並且自動切換到當前所在目錄,我們運行

git init 
git add . //把該目錄下的所有文件全部提交到緩沖區 
git commit -m "GitHelloWorld first commit" //說明 

將代碼提交到HEAD,注意此時還沒有提交到服務器,下面將提交

git remote add origin https://git.oschina.net/xxx/xxx.git//具體看項目 
git push origin master//可能出現Non-fast-forward問題 
5.可能遇到的問題

! [rejected] master -> master (non-fast-forward)error: failed to push some refs to

原因:git倉庫中已經有一部分代碼,所以它不允許你直接把你的代碼覆蓋上去。
例如我先在平台上建了一個項目然后添加了一個readme,本地上的跟目錄又沒有出現,所以造成兩邊的代碼不同步,這樣就必須先把平台上的代碼pull下來,然后在push上去 。

解決辦法

(1).看到提示里面,感覺是本地的代碼不是最新的。

所以覺得應該是類似於svn中的,先update一下,再去commit,估計就可以了。

所以先去pull試試:

git pull
結果直接pull好像是不對的

看來需要先搞懂pull的用法。

(2).估計是指定對應的要pull的目標即可。

所以再去試試 pull origin:

git pull origin
(3).使用 git pull --rebase master
git pull --rebase origin master
(4).接着再去:
git push origin master

然后我們可以看到代碼已經提交上去了
以上操作基於oschina,win7 操作

6.使用ssh公鑰提交,避免每次需要屬於密碼
(1).打開gitbash 或 gitshell執行
ssh-keygen
(2).提示輸入保存key的位置,直接回車
[plain] view plain copy print?
Enter file in which to save the key (/c/Users/{Your_User_Name}/.ssh/id_rsa):
(3).會提示輸入ssh 密碼,直接回車兩下
[plain] view plain copy print?
Created directory '/c/Users/{Your_User_Name}/.ssh'. 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
(4).打開目錄:
[plain] view plain copy print?
Created directory '/c/Users/{Your_User_Name}/.ssh'. 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
(5).打開id_rsa.pub文件,復制里面的key
(6). git.oschina.net ->SSH keys -> 添加key -> 粘貼剛才復制的key

(7).打開gitbash 或 gitshell clone代碼
[plain] view plain copy print?在CODE
git clone --recursive(如果存在submodule的話) [你的git地址]
(8).測試一下該SSH key

在git Bash 中輸入以下代碼

$ ssh -T git@github.com

當你輸入以上代碼時,會有一段警告代碼,如:

The authenticity of host 'github.com (207.97.227.239)' can't be established.
# RSA key fingerprint is 16:27:ac:a5:76:28:2d:36:63:1b:56:4d:eb:df:a6:48.
# Are you sure you want to continue connecting (yes/no)?

這是正常的,你輸入 yes 回車既可。如果你創建 SSH key 的時候設置了密碼,接下來就會提示你輸入密碼,如:

Enter passphrase for key '/c/Users/Administrator/.ssh/id_rsa':

當然如果你密碼輸錯了,會再要求你輸入,知道對了為止。

注意:輸入密碼時如果輸錯一個字就會不正確,使用刪除鍵是無法更正的。

密碼正確后你會看到下面這段話,如:

Hi username! You've successfully authenticated, but GitHub does not
# provide shell access.

如果用戶名是正確的,你已經成功設置SSH密鑰。如果你看到 “access denied” ,者表示拒絕訪問,那么你就需要使用 https 去訪問,而不是 SSH 。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM