Git檢視某一天的詳細修改日誌

2022-08-24 12:00:10 字數 3025 閱讀 5853

檢視2011-3-25的日誌,包括commit和修改涉及的**;

流程:取** → 每次工作前更新**到最新版本 → 修改** → 提交**到伺服器

設定使用者名稱與郵箱

12

git config --global user.name "my name"git config --global user.email "[email protected]"
從已有的git庫中提取**

更新本地**到最新版本(需要merge才能合到本地**中)

git fetch
合併更新後的**到本地

git merge
更新**方式的另一種方法(git pull是git fetch和git merge命令的乙個組合)

git pull
修改**後,檢視已修改的內容

git diff --cached
將新增加檔案加入到git中

git add file1 file2 file3
從git中刪除檔案

12

git rm file1git rm -r dir1
提交修改

git commit -m 'this is memo'
如果想省掉提交之前的 git add 命令,可以直接用

git commit -a -m 'this is memo'

commit和commit -a的區別, commit -a相當於:

提交所有修改到遠端伺服器,這樣,其它團隊成員才能更新到這些修改

git push
顯示commit日誌

git log
不僅顯示commit日誌,而且同時顯示每次commit的**改變。

git log -p
回滾**:

git revert head
你也可以revert更早的commit,例如:

git revert head^
銷毀自己的修改

git reset --hard
檢視最新版本和上乙個版本的差異(乙個^表示向前推進乙個版本)

git diff head head^
將branchname分支合併到當前分支中。(如果合併發生衝突,需要自己解決衝突)

git merge branchname
解決衝突

當merge命令自身無法解決衝突的時候,它會將工作樹置於一種特殊的狀態,並且給使用者提供衝突資訊,以期使用者可以自己解決這些問題。當然在這個時候,未發生衝突的**已經被git merge登記在了index file裡了。如果你這個時候使用git diff,顯示出來的只是發生衝突的**資訊。

在發生衝突的時候,如果你使用git status命令,那麼會顯示出發生衝突的具體資訊。

在你解決了衝突之後,你可以使用如下步驟來提交:

第一步(如果需要增加檔案):

git add file1
第二步:

git commit
git pull 從git伺服器取出,並且和本地修改merge, 類似於svn up,但是對刪除的檔案不管用,恢復刪除檔案用

git使用技巧篇 (2011-01-24 16:45)

分類: linux 基礎

git梳妝

我們可以利用git的config命令或者直接編輯~/.gitconfig檔案(如果沒有的話建立它)來為自己打造獨一無二的git。我建議直接編輯使用者目錄下得.gitconfig檔案,拿我本地的檔案為例,一一為大家解說,完整的檔案內容如下:

[user]

name = phoenix

email = [email protected]

[alias]

co = checkout

ci = commit -a

st = status

br = branch

oneline = log –pretty=oneline –since=』2 days ago』

onelog = log -p -1

[color]

status = auto

branch = auto

ui = auto

該檔案主要包含三個部分的內容:

使用者基本資訊:可以設定你的名字和email,這樣在你提交**的時候就會顯示出你的名字

顏色:每次看diff時是不是挺痛苦的?那麼為什麼不給我們的git加上顏色呢?只需要加上那三行,就可以讓紅色和綠色的提示出現在你的控制台中

git靈動

現在來講講』git log』,』git stash』,』git formate-patch』三個命令的用法和技巧:

git親友團

git的使用技巧還包括利用git包含的和附加的一些強大工具,這些工具主要包括git svn、git citool、gitk和git的自動提示指令碼:

git svn:git和svn可以很方便的整合在一起,這就大大減少了從svn向git遷移的學習成本,這也是我特別建議大家首次接觸git的使用方式。git svn是乙個git內建的工具,你安裝了git也就安裝了它,譬如說你們團隊有乙個svn伺服器,但是你想利用git本地的一些強大特性,那麼你依然可以安裝git,使用git的branch功能,只不過再更新**和提交**的時候,使用git svn命令即可。在這裡我簡單的講講最常使用和需要注意的兩個命令,其餘的命令讀者可以通過』git svn –help』來檢視:』git svn rebase』命令取代了』svn update』用於將伺服器**更新到本地;』git svn dcommit』取代了』svn ci』,需要注意的是,本地必須用git提交了**之後,再使用』git svn dcommit』。只需要這樣,你就可以輕鬆地從svn轉向git了。

你可以用它來提交**,可以用它來將你本地的修改追加在上一次提交的**中,你還可以用它來修改你上次提交的資訊等等。這個工具可以大大幫助你完成以前svn不可能完成的任務

java取得某一天的前一天的日期

string date this.getparameter ds,startdate 某乙個string型別的日期 dateformat format new dateformat yyyy mm dd 轉換 calendar cal calendar.getinstance cal.settime...

mysql 查詢某一年 某一月 某一天的資料

查詢某一年 某一月 某一天的資料 可組合 select fromymt where date format indate,y m d 2016 10 10 indate為表中列名 mysql查詢一天,查詢一周,查詢乙個月內的資料 查詢一天 select from ymt where date ind...

mysql 查詢今天 某一天 某一月 某一年的資料

今天 select from 表名 where to days 時間欄位名 to days now 昨天 包括昨天和今天的資料 select from 表名 where to days now to days 時間欄位名 1昨天 只包括昨天 select from 表名 where to days ...