git命令,github網站以及sourceTree用法詳解


1git下載安裝

這里只是windows安裝方法:

進入這個網址:http://msysgit.github.com/,或者這個網址:https://git-scm.com/download,點擊下載,就會下載下來一個exe文件,雙擊打開,安裝即可

完成安裝之后,就可以使用命令行的 git 工具(已經自帶了 ssh 客戶端)了,另外還有一個圖形界面的 Git 項目管理工具。

 

參考的網址:https://gitee.com/progit/

這里是很全面的git用法講解,包含linux、mac用法,可以參考。

 

2、git初次配置

 

ps:如果你還沒有git賬號,去git的官網注冊一個,官網網站:www.gitbub.com

 

ps:我在注冊git賬號的時候遇到一個問題,輸入完用戶名郵箱密碼后,需要驗證,也就是Verify account,但是我到這一步的時候一直轉圈圈,提示:Unable to verify your captcha response.查了一下有的說是不支持IE瀏覽器內核,有的說重新刷新DNS,我都試了都不好使,最后還是換到手機的QQ瀏覽器,注冊成功的。(注冊的時候總提示錯誤,不管他,只要能往后走就繼續)

 

打開cmd,依次輸入命令:

git config --global user.name "John Doe"

git config --global user.email johndoe@example.com

 

第一個命令里面是輸入你自己的用戶名,第二個命令里面輸入你自己的郵箱。

 

上面兩個命令輸入完,沒有提示,可以到你的主目錄里面去看有沒有添加成功:首先打開顯示隱藏文件,然后windows一般是在:C:\Documents and Settings\Administrator這個路徑下,有一個.gitconfig文件,將這個文件打開,可以看到里面有你剛輸入的用戶名和郵箱,就可以了。

3、git使用

3.1 git基本命令管理文件

比如你要使用git管理F:\python\appiumDemo1這個路徑下的這個appiumDemo1項目。那么第一步:打開cmd,進入這個路徑:

 

 

第二步:輸入命令git status,會提示:(如果確定自己的項目沒有被git管理,就直接跳過這個步驟,往下走)

fatal: not a git repository (or any of the parent directories): .git

這個命令可以看到,當前路徑,是否有被git管理,如果是上面這個提示,就表示沒有被git管理。

第三步:輸入 git init

 

 

然后去這個路徑下看,會發現多了一個.git的文件夾。這個文件夾就是用來管理這個文件路徑下的所有文件的。如果不想被git管理了,將這個文件夾刪除即可

第四步,再次輸入 git status,發現報錯了:

 

 

第五步:上面報錯提示中說了,沒有添加被管理的文件,使用git add <file> 添加你想要管理的文件。比如我輸入命令git add base,輸入之后再次輸入git status驗證一下,會發現base文件夾里面的文件都被管理了,會提示new file,其他的文件還是Untracked files

 

 

注意:如果想要添加當前目錄下所有文件,使用git add . 即可。

 

第六步:如果你的文件更新了,假如我更新了base文件夾里的base_driver.py,那么再次輸入git status,就會提示:

 

 

提示你有一個文件修改了,上面還提示說使用“git add <file>”更新文件,使用”git restore <file>”撤銷更改。

所以第七步:因為我修改了base文件夾下的base_driver.py文件,如果要提交修改就使用命令:git add base或者git add base/base_driver.py,如果要撤回修改,那么就是用命令:git restore base或者git restore base/base_driver.py

 

第八步:提交版本,命令:git commit -m “注釋”

 

以上的操作是git管理本地項目,還沒傳到github上,后面會講到如何傳到github 

 

3.2 SourceTree介紹

SourceTree是一個用於windowsmac的免費git客戶端,簡化了git的管理。

 

下載安裝步驟:

1、到官網下載exe文件https://www.sourcetreeapp.com/

2、下載SourceTreeSetup-3.3.8.exe”完成后,雙擊安裝,跳到這個頁面的時候,先關閉頁面:

 

 

 

3、關閉頁面后,進入下面這個路徑:

C:\Users\Administrator\AppData\Local\Atlassian\SourceTree

這個路徑中的Administrator是你電腦的用戶名,你自己的電腦不是這個用戶名的話,改成自己的。進入這個路徑后新建一個文件:accounts.json,將下面這段代碼粘貼到你新建的文件中:

[

  {

    "$id": "1",

    "$type": "SourceTree.Api.Host.Identity.Model.IdentityAccount, SourceTree.Api.Host.Identity",

    "Authenticate": true,

    "HostInstance": {

      "$id": "2",

      "$type": "SourceTree.Host.Atlassianaccount.AtlassianAccountInstance, SourceTree.Host.AtlassianAccount",

      "Host": {

        "$id": "3",

        "$type": "SourceTree.Host.Atlassianaccount.AtlassianAccountHost, SourceTree.Host.AtlassianAccount",

        "Id": "atlassian account"

      },

      "BaseUrl": "https://id.atlassian.com/"

    },

    "Credentials": {

      "$id": "4",

      "$type": "SourceTree.Model.BasicAuthCredentials, SourceTree.Api.Account",

      "Username": "username@email.com"

    },

    "IsDefault": false

  }

]

 

PS:低版本的可能不需要第4步,所以完成第3步后先到第5步看看可以出來相同頁面的話,就不需要操作第4步了,否則就需要。

 

4、再進到C:\Users\Administrator\AppData\Local\Atlassian這個路徑下的SourceTree.exe_Url_ul4qrk3hz4zqb14vcaiypmrdv255kkqk這個文件夾里,文件夾名字略有不同沒關系,進入以后會有你的版本號為名字的一個文件夾,雙擊進去,打開user.config文件,里面添加:

<setting name="AgreedToEULA" serializeAs="String">

    <value>True</value>

</setting>

<setting name="AgreedToEULAVersion" serializeAs="String">

    <value>20160201</value>

</setting>

5、之后再打開SourceTree.exe,就跳過了注冊步驟,進入下面這個頁面:

 

 

 

6、選擇我不想使用Mercurial,就進入主頁面了。

 

3.3 使用終端命令上傳到github

如何將自己的項目放到github網站上?

1、登錄github網站

2、登錄成功后,右上角有一個加號,點擊加號,選擇New repository

 

 

 

3、

選擇owner(作者),輸入repository name(倉庫名,項目名),輸入描述信息,也可以不輸入。選擇public,這樣大家都可以看到。然后選擇Initialize this repository with a README,勾選這個會自動創建一個readme文件,暫時不勾選。

下面還有兩個,Add .gitignore 這個是一個忽略哪些文件的意思,忽略意思是說你可以把項目中的某些文件不上傳,比如__pycache__緩存文件,可以輸入Python,會有些默認忽略的。暫時選擇None

Add a license:添加協議,開源協議,比如你的項目可以隨意給人使用,不需要署名,就可以選擇MIT協議。

點擊create repository,進入到下一頁

 

 

 

4、這一頁上的第一行的鏈接,是你即將創建的新項目的鏈接。

create a new repository on the command line:表示你想要創建的git倉庫是一個沒有被git管理的,項目中沒有.git文件。

push an existing repository from the command line:已經是一個git項目了,項目中有.git文件。

這里比如我想要將我本地的F:\python\search這個項目傳上來,這是一個沒有被git管理的項目,那么就先進入這個項目路徑,把第一個里面的命令復制下來,一條一條執行,即可:

git init

git add README.md    改成 git add .  將所有的文件交給git

git commit -m "first commit"     提交但是還沒有推送,-m后面是備注

git remote add origin https://github.com/xxx/xxx.git     網址改成你上面github上的網址

git push -u origin master  #上傳到上一步的鏈接中

 

remote命令:將本地的項目和后面這個鏈接聯系起來

push命令:將本地的項目上傳到上面的鏈接

 

ps:可能會彈出輸入github的用戶名和密碼的彈框,輸入即可。另外,如果你的項目已經在本地被git管理了,有.git文件,可以刪掉或者直接跳過git init以及git add .命令。

 

5、上傳之后,刷新github,就進入到下面這個頁面:

 

 

 

 

 

3.4 下載github項目

 

download zip方式:

進入項目主頁,比如:https://github.com/suyang2020/PoDemo

點擊Clone and download,點擊download zip 即可。

 

 

 

 

clone方式

如果用過svnclonesvncheck out一樣,從遠端服務器克隆一份一樣的到本地。

比如公司的git服務器上有一份代碼需要你拿下來,如何操作?

 

這里我們用SourceTree,打開,然后按照如下圖,依次點擊或者輸入:

 

 

 

3步是你要clone的項目路徑,第4步是你clone到本地的路徑,輸入完之后點擊克隆按鈕。

完成后在本地就有這個項目了。

 

3.5 fork概念

隨便進入一個別人的github項目網址,可以看到有一個fork按鈕,如圖:

 

 

 

點擊這個fork按鈕,回到自己的主頁,可以發現這個項目到自己的那里了。

 

 

 

以后你可以把這個項目clone下來,在這個項目里面修改、commit,和項目原主人就沒關系了。同時項目原主人有修改內容也不會同步到你這里。

 

3.6 pull命令

從遠端第一次拿到本地,叫作克隆,后面再次拿下來,叫作pull

比如,在公司,一個項目可能很多人同時做,這個項目別人更新后提交到git服務器了,你要拿下來,就要pull

再或者我們也可以自己從github網站上修改自己的項目。修改scripts目錄下的test_search.py文件,修改步驟:

依次雙擊scriptstest_search.py,進到下面這個頁面,

 

 

 

點擊圈紅的按鈕,就可以修改代碼。

修改完之后,在頁面下方寫上修改內容,點擊commit changes,網站上的代碼就改好了。

那么怎么把遠端的更新到本地?

 

進入SourceTree工具,點擊拉取按鈕:

 

 

 

 

彈出拉取彈框,點擊拉取,就可以了。看一下本地的你修改的文件,是不是同步了。

3.7 使用SourceTree上傳到github

 

倘若你在本地修改了被git管理的文件,比如我之前上傳的PoDemo,我修改了其中的一個文件 testSearch.py,修改之后到SourceTree看一下變化:

 

 

 

 

歷史記錄那里會提示“未提交的更改”, 表示你本地有修改但是還沒有提交到服務器,如果已經修改完畢,代碼調試過了沒問題了,就可以提交,下面圈紅的部分是待提交的文件,點擊右側的加號,點完后如下圖:

 

 

 

如果你有很多文件同時修改了,可以點擊暫存所有,那么所有的文件都會被暫存,之后點擊左上角的“提交”按鈕,點擊后如下圖:

 

 

 

下方可以輸入修改說明,有一個復選框,是否立即推送到github上,如果勾選,然后點擊提交,就表示commit+push操作,如果不勾選點提交,那么就等同於commit操作,沒有push到服務器,可以多次commit之后再push

 

如果沒有立即推送,左上角的推送按鈕上會有數字提示,如下圖,你想推送的時候,點擊下圖的推送按鈕即可。

 

 

 

通過雙擊圈黃的部分,可以切換版本,比如你現在雙擊first commit,你本地的PODemo項目就會撤回到第一次上傳時候的樣子,再雙擊上面的,又會回到上面的版本。

3.8 沖突

如果遇到沖突(比如兩個人同時修改了同一個地方),那么你推送的時候會報錯:failed to push some refs to ...如下圖:

 

 

 

 

這個時候,要先將github上的版本pull下來,點擊首頁上的”拉取”按鈕,如圖:

 

 

 

 

點擊”拉取”,會有個提示:

 

 

 

關閉提示,打開你修改的文件,會發現不一樣的地方,如下圖:

 

 

 

圈紅的兩個地方中間的部分就是沖突的部分,需要你自己手動來修改。

或者右擊這個文件,點擊解決沖突菜單,如圖

 

 

可以選擇使用我的版本解決沖突,使用他人版本解決沖突等

修改好之后重新提交,推送,即可。

所以要注意使用的過程中,先把服務器最新代碼pull下來,再修改,再push

 


免責聲明!

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



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