git rename后查看之前的記錄
對于某個檔案進行rename之后,使用show log命令查看之前的修改記錄都會丟失
通過命令列方式進行mv之后,在tortoisegit中查看記錄還是丟失的
git mv 從博客園下載已發布的文章.bat 博客園-下載已發布文章.bat
git commit -m "rename"
git push
解決辦法:今天在tortoisegit中無意中找到辦法,對于重命名的檔案,在日志資訊界面中,選中有更名檔案點右鍵有個選項"顯示重命名或復制前日志",就可以查看到rename之前的所有日志,

在totorisegit中無法對某個檔案進行目錄移動而保留之前的提交記錄,比如從A檔案夾移動到B檔案夾中
以上兩項操作都會使用.git目錄越來越大
TODO待處理
git還原某個錯誤的push
有一次操作出錯,導致把分支所有的提交都push到master中了,主要是這兩個分支的代碼差別還是非常大的
我的操作方法:
在tortoise中顯示日志,還原到某個版本,然后重新push
目前這個操作還有點蒙,經過幾番操作才正確撤消我的push
git從分支推送某個提交到master
在tortoisegit的日志資訊中,可以選擇這個操作
git在windows下命令列的使用
在我的電腦上,打開的git命令列是使用這個工具mingw
[
](file:///C:/Users/qing/AppData/Local/Temp/OpenLiveWriter674401182/supfiles40FD0489/image[2].png)
mingw
mingw是Minimalist GNU for Windows的縮寫,允許控制臺模式的程式使用微軟的標準C運行時(C Runtime)庫(MSVCRT.DLL),又可以呼叫windows的API
GNU是一個自由的作業系統,其內容軟體完全以GPL方式發布,這個作業系統是GNU計劃的主要目標,名稱來自GNU's Not Unix!的遞回縮寫,因為GNU的設計類似Unix,但它不包含具著作權的Unix代碼,GNU的創始人,理查德·馬修·斯托曼,將GNU視為“達成社會目的技術方法”,
git for windows
Git for Windows是用于windows平臺下的倉庫(另有github for windows)
官網:https://git-for-windows.github.io/
TortoiseGit
github圖形化客戶端,包含多國語言包,
官網:https://tortoisegit.org/download/
修改檔案的日期為git提交日期
出于我有一個需求,當我在家里的電腦上從git同步我的博客md檔案時,新檔案的日期是我拉取那天的日期,而當我想按日期排序檔案時,很多檔案并不能按我在git提交的時間來排序,
通過google查找到某些命令,這條在windows下對于英文命名的檔案是可以查詢到的,而對于中文命名的檔案則會顯示亂碼,且不會顯示日期,
git ls-tree -r --name-only HEAD | ForEach-Object { "$(git log -1 --format="%ai" -- "$_")`t$_" }
于是我就嘗試從下面這幾個方向解決我的問題
.NET 操作git
使用庫:LibGit2Sharp
參考:https://c.lanmit.com/bianchengkaifa/net/10681.html
C#/.NET 使用 git 命令列來操作 git 倉庫
python腳本
gitpython,目前我正在使用這個庫來操作git,安裝庫的命令: pip install gitpython
我驗證過此庫不能直接拿來使用: 使用原始創建/修改時間戳檢出舊檔案
通過Python獲取最后一次提交Git存盤庫檔案的時間?
linux腳本
GIT 獲取檔案最初創建及最新修改日期
tortoisegit 命令列
此方法理論上可行,需要去決議字串,目前我通過python腳本解決了我的問題
最終方案
我撰寫的腳本,下載地址: 修改檔案日期為git提交時間.py
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/270745.html
標籤:其他
