git本地專案上傳遠端
阿新 • • 發佈:2018-11-10
Git的安裝就不說了。
原文:https://blog.csdn.net/zamamiro/article/details/70172900
上傳步驟
第一步: 我們需要先建立一個本地的版本庫(其實也就是一個資料夾)。 你可以直接右擊新建資料夾,也可以右擊開啟Git bash命令列視窗通過命令來建立。 現在我通過命令列在桌面新建一個TEST資料夾(你也可以在其他任何地方建立這個資料夾),並且進入這個資料夾 第二步: 通過命令git init把這個資料夾變成Git可管理的倉庫 這時你會發現TEST裡面多了個.git資料夾,它是Git用來跟蹤和管理版本庫的。如果你看不到,是因為它預設是隱藏檔案,那你就需要設定一下讓隱藏檔案可見。 第三步: 這時候你就可以把你的專案貼上到這個本地Git倉庫裡面(粘貼後你可以通過git status來檢視你當前的狀態),然後通過git add把專案新增到倉庫(或git add .把該目錄下的所有檔案新增到倉庫,注意點是用空格隔開的)。在這個過程中你其實可以一直使用git status來檢視你當前的狀態。 第四步: 用git commit把專案提交到倉庫。View Code-m後面引號裡面是本次提交的註釋內容,這個可以不寫,但最好寫上,不然會報錯,詳情自行Google。 好了,我們本地Git倉庫這邊的工作做完了,下面就到了連線遠端倉庫(也就是連線Github) 由於本地Git倉庫和Github倉庫之間的傳輸是通過SSH加密的,所以連線時需要設定一下 第五步: 建立SSH KEY。先看一下你C盤使用者目錄下有沒有.ssh目錄,有的話看下里面有沒有id_rsa和id_rsa.pub這兩個檔案,有就跳到下一步,沒有就通過下面命令建立 $ ssh-keygen -t rsa -C "[email protected]"第六步: 登入Github,找到右上角的圖示,開啟點進裡面的Settings,再選中裡面的SSH and GPG KEYS,點選右上角的New SSH key,然後Title裡面隨便填,再把剛才id_rsa.pub裡面的內容複製到Title下面的Key內容框裡面,最後點選Add SSH key,這樣就完成了SSH Key的加密 第七步: 在Github上建立一個Git倉庫。 你可以直接點New repository來建立,比如我建立了一個TEST2的倉庫(因為我裡面已經有了一個test的倉庫,所以不能再建立TEST倉庫)。 第八步: 在Github上建立好Git倉庫之後我們就可以和本地倉庫進行關聯了,根據建立好的Git倉庫頁面的提示,可以在本地TEST倉庫的命令列輸入: $ git remote add origin https://github.com/guyibang/TEST2.git 第九步: 關聯好之後我們就可以把本地庫的所有內容推送到遠端倉庫(也就是Github)上了,通過: $ git push -u origin master 由於新建的遠端倉庫是空的,所以要加上-u這個引數,等遠端倉庫裡面有了內容之後,下次再從本地庫上傳內容的時候只需下面這樣就可以了: $ git push origin master 至此就完成了將本地專案上傳到Github的整個過程。 另外,這裡有個坑需要注意一下,就是在上面第七步建立遠端倉庫的時候,如果你勾選了Initialize this repository with a README(就是建立倉庫的時候自動給你建立一個README檔案),那麼到了第九步你將本地倉庫內容推送到遠端倉庫的時候就會報一個failed to push some refs to https://github.com/guyibang/TEST2.git的錯。 這是由於你新建立的那個倉庫裡面的README檔案不在本地倉庫目錄中,這時我們可以通過以下命令先將內容合併以下: $ git pull --rebase origin master 這時你再push就能成功了。
總結:
其實只需要進行下面幾步就能把本地專案上傳到Github 1、在本地建立一個版本庫(即資料夾),通過git init把它變成Git倉庫; 2、把專案複製到這個資料夾裡面,再通過git add .把專案新增到倉庫; 3、再通過git commit -m "註釋內容"把專案提交到倉庫; 4、在Github上設定好SSH金鑰後,新建一個遠端倉庫,通過git remote add origin https://github.com/guyibang/TEST2.git將本地倉庫和遠端倉庫進行關聯; 5、最後通過git push -u origin master把本地倉庫的專案推送到遠端倉庫(也就是Github)上;(若新建遠端倉庫的時候自動建立了README檔案會報錯,解決辦法看上面)。 這裡只是總結了Git上傳專案的一些基本操作,要想更好地使用Git還需更進一步的學習。View Code
Git常用操作命令:
1) 遠端倉庫相關命令 檢出倉庫:$ git clone git://github.com/jquery/jquery.git 檢視遠端倉庫:$ git remote -v 新增遠端倉庫:$ git remote add [name] [url] 刪除遠端倉庫:$ git remote rm [name] 修改遠端倉庫:$ git remote set-url --push [name] [newUrl] 拉取遠端倉庫:$ git pull [remoteName] [localBranchName] 推送遠端倉庫:$ git push [remoteName] [localBranchName] 檢視本地分支是從哪個切出來的 git reflog --date=local --all | grep branch *如果想把本地的某個分支test提交到遠端倉庫,並作為遠端倉庫的master分支,或者作為另外一個名叫test的分支,如下: $git push origin test:master // 提交本地test分支作為遠端的master分支 $git push origin test:test // 提交本地test分支作為遠端的test分支 2)分支(branch)操作相關命令 檢視本地分支:$ git branch 檢視遠端分支:$ git branch -r 建立本地分支:$ git branch [name] ----注意新分支建立後不會自動切換為當前分支 切換分支:$ git checkout [name] 建立新分支並立即切換到新分支:$ git checkout -b [name] 刪除分支:$ git branch -d [name] ---- -d選項只能刪除已經參與了合併的分支,對於未有合併的分支是無法刪除的。如果想強制刪除一個分支,可以使用-D選項 合併分支:$ git merge [name] ----將名稱為[name]的分支與當前分支合併 建立遠端分支(本地分支push到遠端):$ git push origin [name] 刪除遠端分支:$ git push origin :heads/[name] 或 $ gitpush origin :[name] *建立空的分支:(執行命令之前記得先提交你當前分支的修改,否則會被強制刪乾淨沒得後悔) $git symbolic-ref HEAD refs/heads/[name] $rm .git/index $git clean -fdx 3)版本(tag)操作相關命令 檢視版本:$ git tag 建立版本:$ git tag [name] 刪除版本:$ git tag -d [name] 檢視遠端版本:$ git tag -r 建立遠端版本(本地版本push到遠端):$ git push origin [name] 刪除遠端版本:$ git push origin :refs/tags/[name] 合併遠端倉庫的tag到本地:$ git pull origin --tags 上傳本地tag到遠端倉庫:$ git push origin --tags 建立帶註釋的tag:$ git tag -a [name] -m 'yourMessage' 4) 子模組(submodule)相關操作命令 新增子模組:$ git submodule add [url] [path] 如:$git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs 初始化子模組:$ git submodule init ----只在首次檢出倉庫時執行一次就行 更新子模組:$ git submodule update ----每次更新或切換分支後都需要執行一下 刪除子模組:(分4步走哦) 1) $ git rm --cached [path] 2) 編輯“.gitmodules”檔案,將子模組的相關配置節點刪除掉 3) 編輯“ .git/config”檔案,將子模組的相關配置節點刪除掉 4) 手動刪除子模組殘留的目錄 5)忽略一些檔案、資料夾不提交 在倉庫根目錄下建立名稱為“.gitignore”的檔案,寫入不需要的資料夾名或檔案,每個元素佔一行即可,如 target bin *.dbView Code
Git 常用命令
git branch 檢視本地所有分支 git status 檢視當前狀態 git commit 提交 git branch -a 檢視所有的分支 git branch -r 檢視本地所有分支 git commit -am "init" 提交併且加註釋 git remote add origin [email protected]192.168.1.119:ndshow git push origin master 將檔案給推到伺服器上 git remote show origin 顯示遠端庫origin裡的資源 git push origin master:develop git push origin master:hb-dev 將本地庫與伺服器上的庫進行關聯 git checkout --track origin/dev 切換到遠端dev分支 git branch -D master develop 刪除本地庫develop git checkout -b dev 建立一個新的本地分支dev git merge origin/dev 將分支dev與當前分支進行合併 git checkout dev 切換到本地dev分支 git remote show 檢視遠端庫 git add . git rm 檔名(包括路徑) 從git中刪除指定檔案 git clone git://github.com/schacon/grit.git 從伺服器上將程式碼給拉下來 git config --list 看所有使用者 git ls-files 看已經被提交的 git rm [file name] 刪除一個檔案 git commit -a 提交當前repos的所有的改變 git add [file name] 新增一個檔案到git index git commit -v 當你用-v引數的時候可以看commit的差異 git commit -m "This is the message describing the commit" 新增commit資訊 git commit -a -a是代表add,把所有的change加到git index裡然後再commit git commit -a -v 一般提交命令 git log 看你commit的日誌 git diff 檢視尚未暫存的更新 git rm a.a 移除檔案(從暫存區和工作區中刪除) git rm --cached a.a 移除檔案(只從暫存區中刪除) git commit -m "remove" 移除檔案(從Git中刪除) git rm -f a.a 強行移除修改後檔案(從暫存區和工作區中刪除) git diff --cached 或 $ git diff --staged 檢視尚未提交的更新 git stash push 將檔案給push到一個臨時空間中 git stash pop 將檔案從臨時空間pop下來 --------------------------------------------------------- git remote add origin [email protected]:username/Hello-World.git git push origin master 將本地專案給提交到伺服器中 ----------------------------------------------------------- git pull 本地與伺服器端同步 ----------------------------------------------------------------- git push (遠端倉庫名) (分支名) 將本地分支推送到伺服器上去。 git push origin serverfix:awesomebranch ------------------------------------------------------------------ git fetch 相當於是從遠端獲取最新版本到本地,不會自動merge git commit -a -m "log_message" (-a是提交所有改動,-m是加入log資訊) 本地修改同步至伺服器端 : git branch branch_0.1 master 從主分支master建立branch_0.1分支 git branch -m branch_0.1 branch_1.0 將branch_0.1重新命名為branch_1.0 git checkout branch_1.0/master 切換到branch_1.0/master分支 du -hsView Code