git提交歷史?語法: git checkout --orphan
整個過程中主要用到的工具是 merge 和 read-tree,前者用于合并歷史記錄并且中斷在最后提交之前,所產生的文件沖突不會被寫入硬盤;然后利用后者重寫整個文件樹并把讀取到的內容(讀取的目標是 backend)寫入新的路徑下。
最后提交以結束合并。
第2步里,我們把 backend 作為 remote server 添加到 frontend 庫中。
-f 的作用是在添加后立刻 fetch。
要注意一定得使用絕對路徑來引用 backend 庫。
第3步里,--strategy ours 比較難以理解,且聽我詳細道來:一般來說當合并兩個文件樹時,如果遇到沖突我們是需要手動去解決它的,但是目前我們要做的不是解決沖突,而是在引入 backend 歷史記錄的前提下完整保留 frontend 的內容。
沖突肯定是會有的,即使兩個不同的項目也是如此,比方說兩邊都有 README.md、app/、config/ 等文件或目錄,但是我們不關心沖突,我們只要保留 frontend 的文件樹并且把 backend 的歷史記錄合并進來。
修改最近一次commit命令,注意郵箱需包括<>尖括號
如圖,紅圈中提交的用戶名及郵箱是需要改的,則需要復制 需要改的提交記錄的上一個記錄hashcode ,在本例中就是 a0a891a48f92b51201042fccbe61ed12646eda5e
需要修改哪個commit就在行首將 pick 改為 edit ,在本例中則需要改第一行
wq 保存退出之后會返回如下內容
命令執行后會進入提交日志的編輯界面,我們僅需要修改用戶名及郵箱,不需要修改提交日志信息, wq 保存退出即可
接下來此次提交的作者及郵箱會被修改為 --local 級別的用戶名及郵箱,若該級別沒有設置,則會使用 --global 級別的用戶名及郵箱
再查看提交記錄,可以看到提交的作者及郵箱已經改正了
以前開發中未制定、遵循 git 管理項目標準,隨意(不規范)的提交 嚴重“污染了”提交歷史,使開發主線 “臟亂”;
基于以前的倉庫重新開發,這樣可保留以前的配置等文件,但是需要刪除全部的歷史記錄、tag、分支等;
由于自己或其他方面特殊需求,需要保留倉庫的部分屬性(創建時間,說明,主頁等),但需要清除歷史記錄,使其為“新庫”。
基于以上3方面的需求,需要提供一個 在不刪除原倉庫的前提下,清除原倉庫的所有歷史提交記錄(包含:分支、tag) 解決方案。
語法: git checkout --orphan
例句: git checkout --orphan latest_branch
使用 --orphan 選項,可創建1個"清潔"分支(無任何的提交歷史,但是當前分支的內容一應俱全。但嚴格意義上說,這樣創建的分支還不是一個真正的分支,因為HEAD指向的引用中沒有commit值,只有在進行一次提交后,它才算得上真正的分支。
新的分支名可以隨意命名,但不能和以前的分支名沖突。這兒特別強調是因為很多人習慣默認將分支名創建為master .
本文以latest_branch作為新分支名,這個名稱沒有任何特殊含義,你可自定義,只要保證和以后的使用一致即可。
看遠程的提交日志:命令是git log remotes/origin/master (origin/master這個都是默認的遠程倉庫和分支,可以自己改成想看的倉庫和想看的分支);
當然如果你的本地很久沒有更新過遠程倉庫的信息了,看到的日志可能就不是最新的;
所以在查看之前需要先運行git fetch 或者git fetch origin。
如果想查看你已經配置的遠程倉庫服務器,可以運行git remote命令。 它會列出你指定的每一個遠程服務器的簡寫。 如果你已經克隆了自己的倉庫,那么至少應該能看到 origin - 這是 Git 給你克隆的倉庫服務器的默認名字:
你也可以指定選項-v,會顯示需要讀寫遠程倉庫使用的 Git 保存的簡寫與其對應的 URL。
Git 配置文件分為三級,系統級(–system)、用戶級(–global)和目錄級(–local),三者的使用優先級以離目錄 (repository)最近為原則,如果三者的配置不一樣,則生效優先級 目錄級>用戶級>系統級 ,可以通過 git config --help 查看更多內容。
系統級配置存儲在 /etc/gitconfig 文件中,可以使用 git config --systemuser.name"jim" ,git config --sytemuser.email" jim.jim@gmail.com " 來進行配置,該配置對系統上所有用戶及他們所擁有的倉庫都生效的配置值。
用戶級存儲在每個用戶的 ~/.gitconfig 中,可以使用 git config --globaluser.name"jim" ,git config --globaluser.email" jim.jim@gmail.com " 來進行配置,該配置對當前用戶上所有的倉庫有效。
目錄級存儲在每個倉庫下的 .git/config 中,可以使用 git config --localuser.name"jim" , git config --localuser.email" jim.jim@gmail.com " 來進行配置,只對當前倉庫生效。
以上就是git提交歷史的全部內容,gitlab的網頁上提交歷史記錄如何顯示更新時間的方法:1、先找到需要查看提交記錄的項目,點擊名稱進入詳情頁面。2、點擊上方的Commits按鈕,進入提交記錄詳情頁面。3、查看提交記錄:當前頁面就記錄了所有提交記錄,可點擊某一個提交查看具體的改動。