使用git送出項目到開源中國(gitosc)
1、使用的是git.Oschina.com平台
在windos環境下使用git,首先要下載下傳msysgit,安裝沒什麼要求(可能右鍵沒有出現Git Bash按鈕,詳細見下面可能出現的問題)。完了之後會出現Git GUI與Git Bash,顧名思義一個是界面模式,一個是指令行模式。
2、初始化化
username、email初始化
Linux代碼
git config --global user.name "Your Name"
git config --global user.email "[email protected]"//配置
ssh-keygen -t rsa -C "[email protected]"//生成公鑰
配置檔案會存放在使用者所在目錄下的.gitconfig檔案中,比如(C:\Users\Administrator\.gitconfig,這個要看實際的路徑。
公鑰也會在目前使用者檔案夾下,生成.ssh 檔案夾,裡邊有個 id_rsa.pub檔案。
用記事本打開,複制其中的全部内容,然後打開
http://git.oschina.net/keys在該頁面中添加公鑰,标題可以随便填,公鑰就是剛才複制過的内容,然後儲存即可。
注意也可以不實用公鑰:在使用的時候每次需要輸入使用者名和密碼驗證
3、在git.oschina.net管理頁面建立項目
這個過程就不在這裡詳細說明了,傻瓜化操作
3、送出項目代碼
切換本地項目根目錄(與.classpath和.project同級),右擊然後選擇Git Bash,
這是就會彈出Git指令行,并且自動切換到目前所在目錄,我們運作
linux指令
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問題
一般會遇到
" ! [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 操作