有時候看到程式有問題,卻不知道他出自哪個版本
也許可以參考下列:
程式 build 之前, 讓IDE 自動執行 ctrl.sh 檔案(不能自動就手動囉) 將所需要的版本號 compiler 進去程式裡面
由於該項目沒有正式導入使用,使用者請斟酌
最大原因 version.h 檔案無法與真正的commit的一致!!!
因為 commit 後 commit次數變了 檔案指紋也變了 所以執行 ctrl.sh 後 又會生成一個新的 version 檔案...
無限循環 雞生蛋 蛋生雞的問題 我投降!!...
有需要的 可以參考下面 程序自行更改:
2019年12月28日 星期六
2019年12月23日 星期一
讓 git commit 更好的理解commit 的作用...type:
程式變動不外乎 新增/變動feature, fix bug, refactor function, add some tests, change style, modify documentation, revert commit, improves performance.
因此 type 使用以下類別:
因此 type 使用以下類別:
2017年1月31日 星期二
Windows push repo to bitbucket by TortoiseGit
Step 1: 建立Putty Key 密鑰 密鑰
Step 2: 申請Bitbucket帳號, 並建立一個Repository
Step 3: Bitbucket SSH 密鑰設定方式
進入Bitbucket的管理畫面,在Bitbucket 右上角頭像中選取 Bitbucket settings
Step 4: 在TortoiseGit中輸入相關訊息
1. HTTPS:
Push 的時候會讓你輸入Bitbucket 的密碼。
2. SSH:
設定密碼到 Bitbucket 後,可不輸入密碼直接上傳資料。
但...人算不如天算,錯誤訊息:
tortoisegit bitbucket to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository.這主要是因為Key 無法正確配置,我們雖然設定了密鑰位置也設定了 Bitbucket 的公鑰,但 TortoiseGit 推送中的 autoload key 顯示無法勾選,那到底是有load key 還是沒有 load key 呢?
其實這主要是由於 ssh client 設定錯誤, 我們需要指定 SSH client 的位置,預設是ssh (for OpenSSH),對應錯誤會讓 Key 無法產生作用,我們需要在 TortoiseGit settings => Network 中設定 SSH client 正確路徑, Plink 一般是 "C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe"
參考. 當然你安裝時選成 Plink 但想用openssh key, 也是相同的位置做更改。
Step 2: 申請Bitbucket帳號, 並建立一個Repository
Step 3: Bitbucket SSH 密鑰設定方式
進入Bitbucket的管理畫面,在Bitbucket 右上角頭像中選取 Bitbucket settings
Step 4: 在TortoiseGit中輸入相關訊息
推送有兩種方式,都需要將其路徑貼到 TortoiseGet Remote origin 的 URL 中,Putty Key 位置也一併寫入。
上述的 URL 路徑 可以在Bitbucket 中的 Repository中找到。
1. HTTPS:
Push 的時候會讓你輸入Bitbucket 的密碼。
2. SSH:
設定密碼到 Bitbucket 後,可不輸入密碼直接上傳資料。
但...人算不如天算,錯誤訊息:
tortoisegit bitbucket to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository.這主要是因為Key 無法正確配置,我們雖然設定了密鑰位置也設定了 Bitbucket 的公鑰,但 TortoiseGit 推送中的 autoload key 顯示無法勾選,那到底是有load key 還是沒有 load key 呢?
其實這主要是由於 ssh client 設定錯誤, 我們需要指定 SSH client 的位置,預設是ssh (for OpenSSH),對應錯誤會讓 Key 無法產生作用,我們需要在 TortoiseGit settings => Network 中設定 SSH client 正確路徑, Plink 一般是 "C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe"
參考. 當然你安裝時選成 Plink 但想用openssh key, 也是相同的位置做更改。
2017年1月28日 星期六
Git 移除太大的檔案
一不小心加入大檔案到 git , 事後才發覺該怎麼辦呢?
請參考官方網站 維護及資料復原 ...
注意 請先將資料備份 若改壞恕不負責
使用 "C:\Program Files\Git\git-bash.exe", 看一下Git 控管中資料到底有多少,
先用 git 整理一下資料,
$ git gc
Counting objects: 118, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (103/103), done.
Writing objects: 100% (118/118), done.
Total 118 (delta 74), reused 0 (delta 0)
看看資料大小:
$ git count-objects -v
count: 0
size: 0 <===== 尚未整裡的資料大小
in-pack: 118
packs: 1
size-pack: 88824 <===== 整理後的資料大小 (88MB)
prune-packable: 0
garbage: 0
size-garbage: 0
先看看我們有什麼大的檔案 在 git 歷史裡
$ git verify-pack -v .git/objects/pack/pack-f281f7156b17e6bd09a5997530c06f73f00d35d9 | sort -k 3 -n | tail -3
41695866016a1b15c0afca6f245ead1688927a78 blob 48375598 17882652 73069419 1 431afce4d21aae4f7456423d57e7aa41e5270572
431afce4d21aae4f7456423d57e7aa41e5270572 blob 107386372 18624491 54444035
98cfa13fbe22f508b65b58772b18d0888f7a02e8 blob 107386372 18662533 27542
偷懶的做法:
$ git verify-pack -v .git/objects/pack/* | sort -k 3 -n | tail -3
431afce4d21aae4f7456423d57e7aa41e5270572 blob 107386372 18624491 54444035
98cfa13fbe22f508b65b58772b18d0888f7a02e8 blob 107386372 18662533 27542 <== 會有重複的
98cfa13fbe22f508b65b58772b18d0888f7a02e8 blob 107386372 18662533 27542
縮小好多 就等待檢查資料有沒有被改壞.....
請參考官方網站 維護及資料復原 ...
注意 請先將資料備份 若改壞恕不負責
使用 "C:\Program Files\Git\git-bash.exe", 看一下Git 控管中資料到底有多少,
先用 git 整理一下資料,
$ git gc
Counting objects: 118, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (103/103), done.
Writing objects: 100% (118/118), done.
Total 118 (delta 74), reused 0 (delta 0)
看看資料大小:
$ git count-objects -v
count: 0
size: 0 <===== 尚未整裡的資料大小
in-pack: 118
packs: 1
size-pack: 88824 <===== 整理後的資料大小 (88MB)
prune-packable: 0
garbage: 0
size-garbage: 0
先看看我們有什麼大的檔案 在 git 歷史裡
$ git verify-pack -v .git/objects/pack/pack-f281f7156b17e6bd09a5997530c06f73f00d35d9 | sort -k 3 -n | tail -3
41695866016a1b15c0afca6f245ead1688927a78 blob 48375598 17882652 73069419 1 431afce4d21aae4f7456423d57e7aa41e5270572
431afce4d21aae4f7456423d57e7aa41e5270572 blob 107386372 18624491 54444035
98cfa13fbe22f508b65b58772b18d0888f7a02e8 blob 107386372 18662533 27542
偷懶的做法:
$ git verify-pack -v .git/objects/pack/* | sort -k 3 -n | tail -3
431afce4d21aae4f7456423d57e7aa41e5270572 blob 107386372 18624491 54444035
98cfa13fbe22f508b65b58772b18d0888f7a02e8 blob 107386372 18662533 27542 <== 會有重複的
98cfa13fbe22f508b65b58772b18d0888f7a02e8 blob 107386372 18662533 27542
檔案名稱反查
$ git rev-list --objects --all | grep 98cfa13f
98cfa13fbe22f508b65b58772b18d0888f7a02e8 wx_pch.h.gch/Debug_wx_pch_h_gch
知道名稱後,就可以把他從 Git 控管的歷史中移除掉
$ git filter-branch --index-filter 'git rm --cached --ignore-unmatch wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite a9d6e52a7bbfe36b82aa1b84aaf2042ff6942210 (1/7) (0 seconds passed, remaining 0 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite 5d5eba75d45a1da9728be2536c72db25831fb4d3 (2/7) (1 seconds passed, remaining 2 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite 7dd375e3e9f5a92c8af45ea9e418a9ba9f4f6258 (2/7) (1 seconds passed, remaining 2 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite a46b60616757186fb94f2a3d81f526b3c6e4db19 (2/7) (1 seconds passed, remaining 2 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite c89c8050190e6c9c4a7054843a210ec545848f1d (5/7) (2 seconds passed, remainRewrite 22fd295101421c6d805bd076d359e94938da731f (5/7) (2 seconds passed, remainRewrite 342f4d3624e78b7528eeb4ebbd1ccafd033162e6 (5/7) (2 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was rewritten
再讓 Git 整理一下資料
Rewrite 5d5eba75d45a1da9728be2536c72db25831fb4d3 (2/7) (1 seconds passed, remaining 2 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite 7dd375e3e9f5a92c8af45ea9e418a9ba9f4f6258 (2/7) (1 seconds passed, remaining 2 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite a46b60616757186fb94f2a3d81f526b3c6e4db19 (2/7) (1 seconds passed, remaining 2 predicted) rm 'wx_pch.h.gch/Debug_wx_pch_h_gch'
Rewrite c89c8050190e6c9c4a7054843a210ec545848f1d (5/7) (2 seconds passed, remainRewrite 22fd295101421c6d805bd076d359e94938da731f (5/7) (2 seconds passed, remainRewrite 342f4d3624e78b7528eeb4ebbd1ccafd033162e6 (5/7) (2 seconds passed, remaining 0 predicted)
Ref 'refs/heads/master' was rewritten
再讓 Git 整理一下資料
$ rm -Rf .git/refs/original
$ rm -Rf .git/logs/
$ git gc
Counting objects: 64, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (24/24), done.
Writing objects: 100% (64/64), done.
Total 64 (delta 34), reused 53 (delta 33)
$ git prune --expire=now
看看整理過後的資料大小:
$ git count-objects -v
$ git count-objects -v
count: 0
size: 0
in-pack: 64
packs: 1
size-pack: 39
prune-packable: 0
garbage: 0
size-garbage: 0
縮小好多 就等待檢查資料有沒有被改壞.....
訂閱:
文章 (Atom)
牙醫助理可以做一輩子嗎
很多人好奇牙醫助理可以做一輩子嗎? 理想是 牙醫助理可以一輩子做,但要靠進修或轉向管理/技術,才能保持薪資與職涯成長,不然容易薪資高度在那。 還有助理做到診所牙醫退休關門的。
-
高鐵1號車 標準車廂座位圖 高鐵2號車 標準車廂座位圖 更多相關閱讀【 第一次出國準備什麼? 】
-
保持病人口腔乾燥、酸蝕按照醫生至少盡快用白管吸走和吸水、速度要跟上醫生節奏,保證順利完成黏著,以免造成黏不上,需要從來。 備診 更多相關閱讀【 牙醫學的英文術語 】 1 、 High sheep= 手機 2 、 Etching= 酸蝕 3 、 B...
-
在牙科工作中,有很多不同的療程,通常醫師會說療程英文術語的簡稱: 資料來源 : 臨床牙醫助理手冊 英文名稱 中文名稱 Prostho Margin 邊緣 Impression 印模 ...




