git 使用小結

============================git=======================

1.初始化一個空的git倉庫(在本地創建一個git倉庫)

#mkdir gitlib

#cd gitlib

gitlib# git init   //初始化gitlib庫

Initialized empty Git repository in /home/gitlib/.git/

創建好的.git/目錄下有文件和目錄

2.向倉庫提交我們寫的文件
#mkdir aaa
#git add aaa
#git commit -m "inint" aaa/
這個會報錯是因爲 aaa 是一個目錄而不是一個文件

kernel#touch aaa
#git add kernel/   ====這個文件的信息只添加到git倉庫的索引中去了,並沒有真正的添加到庫中去
#git commit -m "inint" kernel/  ===將索引庫的內容向git倉庫進行提交,這不之後文件aaa纔算真的提				===交到git倉庫中去了
這個就會提交成功。因爲 現在的 aaa是一個文件
git commit -a -m ""====這條命令是已經add了一個或多個文件過後,然後修改了這些文件,就可以只用該命  ====令進行提交 ###沒有使用出效果-a不能識別

3.
 =======分支======
分枝是用來將特性開發絕緣開來的。master 是默認的分支在其他分支上進行開發然後將他們合併到主分支上

git branch  ===========列出本地已存在的分支
git branch -r 列出遠程分支
 git branch -a 列出本地分支和遠程分支
git branch 創建一個新的本地分支,需要注意,此處只是創建分支,不進行分支切換
 git branch -m | -M oldbranch newbranch 重命名分支,如果newbranch名字分支已經存在,則需要使用-M強制重命名,否則,使用-m進行重命名。

   git branch -d | -D branchname 刪除branchname分支

   git branch -d -r branchname 刪除遠程branchname分支
#git checkout aaa ==========切換到aaa分支
#git branch aaa  =====創建一個新分支
#git checkout -b aaa ====創建並同時切換到aaa分支 也就是上面兩條命令的結合
#git push origin aaa ====除非將這條命令敲出否則aaa分支不會出現在遠程服務器上

#cat .git/HEAD ======查看當前在那個分之下

4.更新與合併
===提交到遠程倉庫
#git push origin master ===可以把master換成你想推送的任何分支
#git remote add origin <server> ====如果還沒有克隆現有倉庫,並欲將你的倉庫連接到某個遠程服務				===器,如此就能將你的改動推送到所添加的服務器上了。


#git pull  ====更新本地倉庫至最新改動,以在你自己的目錄中獲取併合並遠端的改動

#git merge <branch > ====要合併其他分支到當前分支

***注意 這並非每次都會成功 ,並可能出現衝突。這個時候就需要這些文件來手動合併這些衝突。改完之後需要執行
#git add <filename> 將他們標記文成功

在合併改動之前,可以使用下面的命令預覽差異
git diff <source_branch> <target_branch>

5. 標籤
爲軟件發佈創建標籤是推薦的 可以執行下面的命令創建一個叫1.0.0的標籤
#git tag 1.0.0 1234567890(下劃線部分是你想要提交ID的前十位字符)
可以用 
#git log ==========來獲取ID
#git tag 1.0.0 ID
#git tag ========來查看創建的標籤
#git show ID  ============命令來查看相應標籤的版本信息,並連同顯示打標籤時提交的對象
#git tag -f 標籤名=====加上-f 覆蓋原有的tag  ****在電腦上沒有發現覆蓋了,也不知道是怎麼覆蓋的有待研究
#git tag -d 標籤名 刪除標籤 
#git push origin :refs/tag/標籤名   刪除服務器上的標籤

6.替換本地改動<這個沒有使用過>
 #git checkout --<filename>  ++++++如果你操作失誤,此命令會使用HEAD中最新的內容替換掉你目錄中的文件。已添加到暫緩存區的改動以及新文件都不會收到影響。
====假如你想丟棄你在本地的所有改動與提交,可以到服務器上獲取最新的版本歷史,並將你的分支指向它:
#git fetch origin
#git reset --hard origin/master

7.查看版本庫的狀態
#git status

7.實用小貼士
1.內建圖形化git  #gitk  ==需要安裝才能使用
2.彩色的git輸出:#git config color.ui true
配置屏幕的幾個顏色 
git cofig --global color.status auto
git cofig --global color.diff auto
git cofig --global color.branch auto
git cofig --global color.interactive auto



3.顯示歷史時,每個提交的信息只顯示一行: #git config format.pretty oneline ==oneline 是一個固定的數不能改變
4.交互式添加文件到暫緩區:git add -i


圖形化客戶端:GitX(L)   開源軟件  Tower(osx)SourceTree(osx)
指南和手冊:git社區參考書專業git像git那樣思考gitHub幫助圖解git
配置

#git commit 提交命令

話說git commit直接可以打開編譯器進行編輯,我想用vim,這該怎麼設置呢

命令是:

#git config --global core.editor vim

也可以直接用

#git commit -m "要註釋的內容"

git config --list

===提交代碼的log裏面會顯示提交者的信息
#git config --global user.name 用戶名
#git config --global user.email 郵箱
#git config --globle core.editor vim
#git remote -v




++++++
#git status ====查看但前狀態
#git pull====從服務器上獲取更新本地庫防止衝突
#git add package/apps/PTTKeyTest/ ====將文件加到庫裏面
#git commit -m "你要寫的註釋" ====將你的代碼提交
#git push ====將你的代碼推送到服務器上

#git branch release
#git pull
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details
git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:
    git branch --set-upstream-to=origin/<branch> release
# git branch --set-upstream-to=origin/master release
Branch release set up to track remote branch master from origin.
#git pull

查詢log
git log
顯示某一條具體的修改
git show 參數
通過用戶名查看log git log --author= amily











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章