#git從本地到遠程 ##從遠程到本地 最開始的時候都是在遠程建立一個項目而後在git clone到本地,例如,能夠在osc-git上建立一個項目而後執行下面的命令:git
git clone https://git.oschina.net/trayvon/spring-aop.gitspring
而後把項目導入IDE就能夠了。fetch
##從本地到遠程 如今我在本地已經有一個項目了,想要發佈出去怎麼辦呢? 首先,你須要在本地項目的根目錄下執行下面的命令:.net
git initxml
這個命令是初始化git目錄,把目錄歸入git管理 而後,仍是須要在遠程建立一個項目例如osc-git或者gitHub上建立一個項目。獲取項目的連接。而後就能夠添加一個遠程連接了。命令以下:rem
git remote add origin https://git.oschina.net/trayvon/spring-aop.gitget
git remote -vast
接下來就能夠用咱們慣用的命令把本地分支推送到遠程庫了:stream
git push origin master
理想很豐滿,現實真骨幹。你會獲得相似於 *src refspec master does not match any.*這樣的錯誤。這是由於尚未master分支。 特別值得注意的是git在第一次commit以後纔會建立master分支 咱們先添加一個文件,commit一次:
git add pom.xml
git commit -m 'add pom.xml'
接下來還須要關聯一下本地分支和遠程分支:
git branch --set-upstream-to=origin/master master
上面的命令是把origin表明的遠程庫的master分支和本地的master分支關聯起來 接下來接能夠方便的使用下面2個命令了:
git pull git push origin master
##總結 git pull的完整命令:
git pull <遠程主機名> <遠程分支名>:<本地分支名>
若是本地分支是當前分支就能夠省略:
git pull <遠程主機名> <遠程分支名>
若是遠程分支和當前分支名稱相同,則分支名稱能夠省略
git pull <遠程主機名>
當遠程分支名稱是origin的時候就是:
git pull origin
由於默認的遠程分支名稱就是origin,因此就變成了:
git pull
git pull是從遠程拿了分支,並在執行了git merge,至關於:
git fetch <遠程主機名> git merge <遠程主機名>/<遠程分支名>
git clone命令默認本地與遠程同名的分支創建了追蹤關係,因此能夠直接:
git pull
git push的完整命令:
git push <遠程主機名> <本地分支名>:<遠程分支名>
若是遠程分支與本地分支同名就能夠直接省略遠程分支:
git push <遠程主機名> <本地分支名>
若是當前分支與遠程分支存在關聯關係就能夠省略本地分支:
git push <遠程主機名>
若是當前分支只有一個追蹤分支就能夠省略主機名:
git push
若是當前分支與多個主機存在追蹤關係,則可使用-u選項指定一個默認主機:
git push -u origin master
這樣就能夠直接使用
git push