1. 程式人生 > 程式設計 >利用git提交程式碼的方法步驟

利用git提交程式碼的方法步驟

一、首先需要下載git

  檢視電腦是否安裝git,開啟終端,輸入git,回車如果輸出如下,則代表已安裝了git

利用git提交程式碼的方法步驟

如果未安裝,則會輸出:

利用git提交程式碼的方法步驟

按照提示輸入:sudo apt-get install git即可安裝!!或者到此處下載:git下載,pkg包下載完成,雙擊安裝。

輸入命令:git --version 可檢視當前git版本

利用git提交程式碼的方法步驟

二.安裝後需要一些配置

配置使用者名稱和郵箱:

$ git config --global user.name "Your Name" 
$ git config --global user.email "[email protected]" 

使用 --global 修飾後設置的全域性的使用者,如果設定單個專案的使用者,可cd到專案根目錄下,執行如下命令:

$ git config user.name "Your Name" 
$ git config user.email "[email protected]" 

使用命令:git config --list 可檢視當前使用者資訊以及其他的一些資訊

$ git config --list 
core.excludesfile=/Users/mac/.gitignore_global 
difftool.sourcetree.cmd=opendiff "$LOCAL" "$REMOTE" 
difftool.sourcetree.path= 
mergetool.sourcetree.cmd=/Applications/SourceTree.app/Contents/Resources/opendiff-w.sh "$LOCAL" "$REMOTE" -ancestor "$BASE" -merge "$MERGED" 
mergetool.sourcetree.trustexitcode=true 
http.postbuffer=524288000 
https.postbuffer=524288000 
user.email=你的郵箱@qq.com 
user.name=你的使用者名稱 
macdeMacBook-Pro:~ Artron_LQQ$

三.建立本地git倉庫

1. cd到你的專案目錄

$ cd /Users/cjk/Desktop/myShop

2. 然後,輸入git命令:

$ git init 

輸出如下:

$ git init 
Initialized empty Git repository in /Users/cjk/Desktop/GitTest/.git/ 

建立了一個空的本地倉庫.

3.將專案的所有檔案新增到快取中:

$ git add . 

git add . (注意,後面有個點)表示新增目錄下所有檔案到快取庫,如果只新增某個檔案,只需把 . 換成你要新增的檔名即可;

4.將快取中的檔案Commit到git庫

git commit -m "新增你的註釋,一般是一些更改資訊"

下面是第一次提交時的輸出:

$ git commit -m "新增專案"
[master (root-commit) 3102a38] 新增專案
 18 files changed,1085 insertions(+)
 create mode 100644 GitTest.xcodeproj/project.pbxproj
 create mode 100644 GitTest.xcodeproj/project.xcworkspace/contents.xcworkspacedata
 create mode 100644 GitTest.xcodeproj/project.xcworkspace/xcuserdata/Artron_LQQ.xcuserdatad/UserInterfaceState.xcuserstate
 create mode 100644 GitTest.xcodeproj/xcuserdata/Artron_LQQ.xcuserdatad/xcschemes/GitTest.xcscheme
 create mode 100644 GitTest.xcodeproj/xcuserdata/Artron_LQQ.xcuserdatad/xcschemes/xcschememanagement.plist
 create mode 100644 GitTest/AppDelegate.h
 create mode 100644 GitTest/AppDelegate.m
 create mode 100644 GitTest/Assets.xcassets/AppIcon.appiconset/Contents.json
 create mode 100644 GitTest/Base.lproj/LaunchScreen.storyboard
 create mode 100644 GitTest/Base.lproj/Main.storyboard
 create mode 100644 GitTest/Info.plist
 create mode 100644 GitTest/ViewController.h
 create mode 100644 GitTest/ViewController.m
 create mode 100644 GitTest/main.m
 create mode 100644 GitTestTests/GitTestTests.m
 create mode 100644 GitTestTests/Info.plist
 create mode 100644 GitTestUITests/GitTestUITests.m
 create mode 100644 GitTestUITests/Info.plist

或者不添加註釋 git commit,但是這樣會進入vim(vi)編輯器

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored,and an empty message aborts the commit.
# On branch master
# Changes to be committed:
#    modified:  LQQCircleShowImage.xcodeproj/project.pbxproj
#    modified:  LQQCircleShowImage/TableViewCell.m
#
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
~                                        
"~/Desktop/LQQCircleShowImage/.git/COMMIT_EDITMSG" 8L,292C

在這裡可以輸入更改資訊,也可以不輸入,然後 按住 shift + :,輸入wq 即可儲存資訊並退出vim編輯器;

四,建立遠端庫

在一些程式碼託管平臺建立專案,例如github或者開源中國社群,這裡已開源中國社群為例;

建立專案後,會生成一個HTTPS連結,如下:

利用git提交程式碼的方法步驟

https://git.oschina.net/liuqiqiang/gitTest.git

五,將本地的庫連結到遠

終端中輸入: git remote add originHTTPS連結

$ git remote add origin https://git.oschina.net/liuqiqiang/gitTest.git 

六.上傳程式碼到遠端庫,上傳之前最好先Pull一下,再執行命令: git pull origin master

輸出:

$ git pull origin master
warning: no common commits
remote: Counting objects: 3,done.
remote: Total 3 (delta 0),reused 0 (delta 0)
Unpacking objects: 100% (3/3),done.
From https://git.oschina.net/liuqiqiang/gitTest
 * branch      master   -> FETCH_HEAD
 * [new branch]   master   -> origin/master
Merge made by the 'recursive' strategy.
 README.md | 1 +
 1 file changed,1 insertion(+)
 create mode 100644 README.md

即pull成功,

七.接著執行:git push origin master

完成後輸出:

$ git push origin master
Counting objects: 34,done.
Delta compression using up to 4 threads.
Compressing objects: 100% (29/29),done.
Writing objects: 100% (34/34),15.63 KiB | 0 bytes/s,done.
Total 34 (delta 3),reused 0 (delta 0)
To https://git.oschina.net/liuqiqiang/gitTest.git
  5e2dda1..537ecfe master -> master

即將程式碼成功提交到遠端庫!!!

注:如果pull之後出現 “ refusing to merge unrelated histories ”這句,就證明你合併pull兩個不同的專案

出現的問題如何去解決fatal: refusing to merge unrelated histories

我在Github新建一個倉庫,寫了License,然後把本地一個寫了很久倉庫上傳。

先pull,因為兩個倉庫不同,發現refusing to merge unrelated histories,無法pull

因為他們是兩個不同的專案,要把兩個不同的專案合併,git需要新增一句程式碼,在git pull,這句程式碼是在git 2.9.2版本發生的,最新的版本需要新增--allow-unrelated-histories

假如我們的源是origin,分支是master,那麼我們 需要這樣寫git pull origin master --allow-unrelated-histories需要知道,我們的源可以是本地的路徑

接著到你的遠端庫檢視,提交前:

利用git提交程式碼的方法步驟

提交成功後:

利用git提交程式碼的方法步驟

注意:操作的時候,指令不要輸錯了!!!!

下面這個是輸錯了 orgin的輸出:

git pull orgin master
fatal: 'orgin' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

正確的應該是origin!!

如果在push的時候有如下輸出:

$ git push -u origin master
To https://git.oschina.net/liuqiqiang/LQQCircleShowImage.git
 ! [rejected]    master -> master (fetch first)
error: failed to push some refs to 'https://git.oschina.net/liuqiqiang/LQQCircleShowImage.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g.,'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

看提示可知道,需要先pull一下,即執行一次:git pull origin master

然後再執行:git push origin master

分支管理

新建分支

$ git branch newbranch

檢視分支

$ git branch

輸出:

* master
newbranch

*代表當前所在的分支

切換分支

$ git checkout new branch

輸出

Switched to branch 'newbranch'

切換後可用git branch檢視是否切換到當前分支

master
* newbranch

提交改動到當前分支

$ git add .
$ git commit -a

可使用git status檢視提交狀態

接著切回主分支

$ git checkout master

輸出:

Switched to branch 'master'

將新分支提交的改動合併到主分支上

$ git merge newbranch

輸出:

Updating cc73a48..93a1347
Fast-forward
GitTest.xcodeproj/project.pbxproj | 9 +++++++++
.../UserInterfaceState.xcuserstate | Bin 0 -> 7518 bytes
GitTest/test.h | 13 +++++++++++++
GitTest/test.m | 13 +++++++++++++
4 files changed,35 insertions(+)
create mode 100644 GitTest.xcodeproj/project.xcworkspace/xcuserdata/Artron_LQQ.xcuserdatad/UserInterfaceState.xcuserstate
create mode 100644 GitTest/test.h
create mode 100644 GitTest/test.m

這裡我提交了兩個檔案,即:test.h和test.m

如果合併後產生衝突,可輸入以下指令檢視衝突:

$ git diff

修改之後,再次提交即可;

接下來,就可以push程式碼了:

$ git push -u origin master

這時可能需要你輸入你的github使用者名稱和密碼,按照提示輸入即可;

刪除分支

$ git branch -D newbranch

輸出

Deleted branch newbranch (was 93a1347).

以上就是最簡單的github操作了,也是在網上看著學的,注意在實際操作中多加練習,程式碼這東西,剛開始橋的多了也就記下了!

到此這篇關於利用git提交程式碼的方法步驟的文章就介紹到這了,更多相關git 提交程式碼內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!