GitHub 貢獻面板新玩法
阿新 • • 發佈:2018-11-26
程式碼請移步GitHub(https://github.com/YES-Lee/git_painter)
無聊的時候刷GitHub發現,好多大牛主頁的貢獻記錄都是一片綠色,比如阮一峰老師的,如下圖。
於是也想把自己的全部刷成綠色,在折騰的過程中覺得就一片綠好像沒意思,於是就有了如下效果。
阮一峰的github
我的github
簡介
原理
操作原理很簡單,GitHub貢獻記錄顯示是給予提交時間的,只需要修改系統時間之後再commit
就OK啦功能
- 一個指令碼自動搞定
- 方便的自定義形狀
- 設定定時任務,每天自動
commit
push
重要: 由於有一些坑,為節約大家時間,請看完教程再進行操作
使用方法
將該專案下載到本地,本地需要使用Linux
作業系統,直接放伺服器上也可以。
下載完之後先刪除.git
資料夾
git clone [email protected]:YES-Lee/git_painter.git && cd git_painter && rm -rf .git // 可以直接下載zip在解壓
重新初始化git
git init
git add .
git commit -m 'init'
然後執行loop指令碼刷記錄,等待結束
python loop.py
GitHub,將該專案推上去,然後就可以到GitHub上看效果啦
git remote add origin {倉庫地址}
git push -u origin master
在伺服器部署自動commit
crontab -e
# 輸入以下程式碼,前兩個引數分別是分鐘和小時,該任務為每天12:00定時執行
# 00 12 * * * cd /home/git_heart && git pull && /usr/bin/python main.py
引數說明
main.py
用於在服務端執行定時任務的指令碼,loop.py
# loop.py
# 自定義圖形
PATTEN = [ # 圖形矩陣,可以通過修改該變數來設定不同的圖形,行建議最多不超過7行
[0, 1, 1, 0, 0, 0, 1, 1, 0, 0],
[1, 1, 1, 1, 0, 1, 1, 1, 1, 0],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0],
[0, 1, 1, 1, 1, 1, 1, 1, 0, 0],
[0, 0, 1, 1, 1, 1, 1, 0, 0, 0],
[0, 0, 0, 1, 1, 1, 0, 0, 0, 0],
[0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
]
# 修改提交次數,次數越多顏色越深,耗時也越長
def commit(flag):
if flag:
for n in range(39):
with open('./record.txt', 'a') as record:
record.write('.~^~')
record.close()
os.system('git commit -a -m \"HeartBeat\"')
...
# 開始日期,在GitHub主頁檢視左上角日期
START_DATE = '2017-7-16' # 開始日期, 碼雲和git顯示不一樣, 建議從最左上角開始
...
才過的坑
- GitHub將專案刪除後記錄也會隨之消失,但是碼雲不會(碼雲已經被我弄的一團糟)
- GitHub從上到下是週日到週六,碼雲是週一到週日,兩個要分別重選時間
commit
圖形展示
- 小心心❤️
[
[0, 1, 1, 0, 0, 0, 1, 1, 0, 0],
[1, 1, 1, 1, 0, 1, 1, 1, 1, 0],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 0],
[0, 1, 1, 1, 1, 1, 1, 1, 0, 0],
[0, 0, 1, 1, 1, 1, 1, 0, 0, 0],
[0, 0, 0, 1, 1, 1, 0, 0, 0, 0],
[0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
]
- X(原諒鄙人想象力不夠豐富)
[
[0, 0, 0, 0, 0],
[1, 0, 0, 0, 1],
[0, 1, 0, 1, 0],
[0, 0, 1, 0, 0],
[0, 1, 0, 1, 0],
[1, 0, 0, 0, 1],
[0, 0, 0, 0, 0]
]
此專案始於無聊,終於裝逼,僅供娛樂,請勿用於其他操作