摘要:是在服務器端開發再合適不過的神器這里只是對自己平常工作中常常使用到的命令做一個小小的總結,方便程序員開發和版本控制的配置文件有三個級別的配置文件,分別是版本庫級別的配置文件全局配置文件用戶家目錄下系統配置文件安裝的時候所在的目錄,一般情況下
Vim+Gig是在服務器端開發再合適不過的神器!這里只是對自己平常工作中常常使用到的git命令做一個小小的總結,方便程序員開發和版本控制!
git的配置文件
1、git有三個級別的配置文件,分別是版本庫級別的配置文件、全局配置文件(用戶家目錄下)、系統配置文件(安裝git的時候所在的目錄,一般情況下是在/etc/)。它們的有限級別如下,.git 目錄下的config文件配置會覆蓋用戶家目錄下的配置文件,而用戶家目錄的配置文件會覆蓋系統的git配置文件
2、git config -e 對版本庫中的.git/config 文件進行編輯
git config -e --global 對主目錄下的.gitconfig文件進行編輯
git config -e --system 對系統級別的配置文件進行編輯
3、git config
git config
git --version
查看當前git的版本
初始化代碼倉庫(此時在當前目錄下,就會多一個 .git 的目錄,就是代碼倉庫)
git init
git config --global user.name "zero"
git config --global user.email "maweibinguo@163.com" (自報家門)
git config --global color.ur true(在命令行中開啟顏色顯示)
對git進行配置
git rev-parse --git-dir
顯示版本庫.git目錄所在的位置
git status -s
功能:用來比較,當前的工作目錄和緩存區的狀態
??:該文件還沒有被git進行追蹤
A:當前工作目錄同緩存文件相比,新增加的文件
M:當前目錄同緩沖區相比,已經進行了改變(Modify)
D: 當前目錄同緩沖區相比,刪除的文件
注意:git status 是以緩沖區中的內容為標準的,所有的AMD都是以緩沖區的內容為準,經過同緩沖區的對比,發現當前工作區進行了AMD等操作
git diff
功能:如果沒有其他參數,git diff 會顯示自從你上次提交快照之后尚未緩存的所有更改
注意:對比的參照點仍然是緩沖區中的內容,將當期那工作目錄中的文件同緩沖區做對比
git diff --cached
功能:將緩沖區的內容同快照中的內容進行對比
git diff HEAD
功能:將當前工作目錄中的文件,同快照中的內容進行對比,HEAD(當前工作分支)
git commit -m "對本次提交的快照的說明"
功能:將緩沖區中的內容添形成一次快照(也就是打一個版本)
git commit -am "對本次提交的說明"
功能:同git commit -m 的功能類似,但是,由于多了一個a參數。這樣就有一個隱含的操作,將已經追蹤的文件先進行自動提交(注意:是已經追蹤到的文件)!
git log :
功能:顯示從最近到最遠的提交日志
個人體會是,我們最想要的就是commmitid和對本次提交的說明
git reset --hard commitid
功能:回到指定的某個版本,注意,是連通當前的工作區一起回去,很可怕的一個命令。如果你并沒有對當前的工作目錄進行提交,而且還執行了這個操作,那么就杯具了,你上次提交后所有的更改內容就全部丟失而來,本人在這方面就犯了很大的錯誤!想想都是血淚啊!
git reflog
功能:用來記錄你的每一次命令,這樣我們就可以看到所有的commitid了(而git log只能夠用來查看當前版本的commitid以及以前提交版本的commitid)
git checkout -- file
功能:將緩沖區或者快照中的指定文件恢復到當前的工作目錄
注意:--是必須要寫的,如果不寫的話,就成為了分支的切換。
同時,我們應該明白,恢復的先后順序。執行完改命令后,如果緩沖區中有該文件的話,那么工作目錄就會恢復到緩沖區的樣子!如果緩沖區沒有文件的話,那么就會恢復到最新提交的版本上面!
git reset HEAD file
功能:將緩沖區中的指定文件,回退到最新的一次commit版本。
這個命令還是很有用的,如果我們誤操作了,并且進行了add,那么此時再用 git checkout --file 恢復工作區中的內容的話,就沒有任何效果了!但是執行git reset HEAD file這個命令,就可以將最新一次的commit中的file文件拉回到緩沖區中,然后在通過git checkout -- file命令,恢復到工作區中!
git branch
功能:展現當前的所有分支,前面帶有 "*" 是所在分支
git branch 分支名
功能:創建一個新的分支
git checkout -b 分支名
功能:創建新分支,并切換到改分支上
git branch -d 分支名
功能:刪除指定的分支(不可以刪除當前所在分支)
git checkout 分支名
功能:用于在不同的分支之間進行切換
注意:由于版本的不同,在操作上可能有所不同!在某些版本上必須先進行git add , commit 之后,才能進行分支的切換!(1.8.3之前的貌似都需要提交才行),而有的分支則不需要進行此操作!
git merge 分支名
功能:將指定的分支合并到當前的分支
關于分支的合并我想說一下,自己的理解,個人認為所謂合并,其實是對所有修改的合并!這里舉個例子說明會更好一些:
A作家寫初步完成了一篇長篇小說的初稿,但是呢仍然需要對這篇長篇小說進行修修改改!處于對質量的嚴格要求!此時A作家找到了B作家,希望B作家提出寶貴的意見,讓他對這篇小說也進行修改!等修改的差不多了,A作家,就讓B作家把他的修改內容發給A作家,A作家再將B作家的修改添加到自己既有的修改上面!(--這應該就是合并)
如果A作家的修改的內容,B作家也進行了修改,那么就有A作家去決定改要誰的修改!(--這就是解決沖突)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/20961.html
摘要:目錄提交代碼常用命令讀寫文件一常用命令從遠程倉庫克隆整個項目代碼列出當前目錄所有還沒有被管理的文件和被管理且被修改但還未提交的文件提交全部未跟蹤和修改文件,但是不處理刪除文件將暫存區里的改動給提交到本地的版本庫參數表示可以直接輸入后面的 目錄 Git提交代碼常用命令 python 讀寫Excel文件Demo 一、Git常用命令 git clone #從遠程倉庫克隆整個項目代碼sh...
閱讀 712·2021-11-22 13:52
閱讀 1518·2021-09-27 13:36
閱讀 2818·2021-09-24 09:47
閱讀 2172·2021-09-22 15:48
閱讀 3600·2021-09-22 15:39
閱讀 1460·2019-08-30 12:43
閱讀 2918·2019-08-29 18:39
閱讀 3181·2019-08-29 12:51