github contribbution 沒記錄怎麼破?
前言
1 .長期使用GitHub託管程式碼的小夥伴可能有發現,有時候寫了幾天的程式碼,但是發現contribbution(小綠框並沒有點亮)
2 .那麼什麼樣的commit才會被統計到呢,這裡從github help上找到了答案,英語不錯的可以看下
中文
Issues 和 pull requests
這個操作是在一年之內
這個操作是針對一個獨立的倉庫,不能是fork
Commits
當你的commits滿足以下條件時,它才會被展示出來:
一年之內提交的commits
commits使用的email地址是與你的Github賬號相關聯的
這些commits是在一個獨立的倉庫而不是fork倉庫(博主就是這種錯誤,導致半個月的commit都沒記錄,才發現)
這些commits是在:
在預設分支上(通常是master)
在gh-pages分支(包含 Project Pages sites 的倉庫)
此外,至少滿足下面條件中的一個(主要針對你Commit的倉庫不是你建立的):
你是這個倉庫的協作者,或者是這個版本庫的擁有組織中的一員
你fork過這個倉庫
你對這個倉庫發起過pull request或者issue
你對這個倉庫標記了Star
【注意】:私有庫的貢獻僅僅對私有庫成員顯示
Contributions未被Github計入的幾個常見原因
* 進行Commits的使用者沒有被關聯到你的Github帳號中。 * 不是在這個版本庫的預設分支進行的Commit。 * 這個倉庫是一個Fork倉庫,而不是獨立倉庫。(博主就是這種錯誤)
如何排查
你可以在你的本地repo裡用`git log`命令檢視`commit`記錄上的個人郵箱是否正確,像我就是因為之前切換到Mac平臺開發之後使用者名稱沒有配置,所以我之後的commit記錄上的郵箱一直是mrchang,所以Github就會認為這些commits都不是你提交的!
補救措施
然而這也並不是沒有補救辦法的,Github官網上就有給出詳細的補救過程,英語好的同學請自行移步 Changing author info,下面是我翻譯自Github Help的簡要步驟:
變更作者資訊
為改變已經存在的 commits 的使用者名稱和/或郵箱地址,你必須重寫你 Git repo 的整個歷史。
警告: 這種行為對你的 repo 的歷史具有破壞性。如果你的 repo 是與他人協同工作的,重寫已釋出的歷史是一種不好的習慣。僅限緊急情況執行該操作。
使用指令碼改變你 repo 的 Git 歷史
我們寫了一段能把 commit 作者舊的郵箱地址修改為正確使用者名稱和郵箱的指令碼。
使用指令碼來改變某個repo的Git歷史
我們已經建立了一個指令碼,使用正確的姓名和電子郵件地址提交後,你以前提交的所有的commits中的作者資訊及提交者欄位中的舊的使用者名稱和郵箱地址都將被更正
注意: 執行這段指令碼會重寫 repo 所有協作者的歷史。完成以下操作後,任何 fork 或 clone 的人必須獲取重寫後的歷史並把所有本地修改 rebase 入重寫後的歷史中。
在執行這段指令碼前,你需要準備的資訊:
Mac、Linux下開啟Terminal,Windows下開啟命令提示符(command prompt)
給你的repo建立一個全新的clone
git clone --bare https://github.com/user/repo.git
cd repo.git
複製貼上指令碼,並根據你的資訊修改以下變數:舊的Email地址,正確的使用者名稱,正確的郵件地址
` #!/bin/sh git filter-branch --env-filter ' OLD_EMAIL="舊的Email地址" CORRECT_NAME="正確的使用者名稱" CORRECT_EMAIL="正確的郵件地址" if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ] then export GIT_COMMITTER_NAME="$CORRECT_NAME" export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL" fi if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ] then export GIT_AUTHOR_NAME="$CORRECT_NAME" export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL" fi ' --tag-name-filter cat -- --branches --tags`
按 Enter鍵 執行指令碼。
用git log命令看看新 Git 歷史有沒有錯誤
把正確歷史 push 到 Github
git push --force --tags origin ‘refs/heads/*’
刪掉剛剛臨時建立的 clone
cd …
rm -rf repo.git
如何正確設定你的 git 個人資訊
接下來全域性設定好你的正確資訊,以後就放心的用Github進行版本管理吧
git config --global user.email "你的郵件地址"
git config --global user.name "你的Github使用者名稱"
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69923331/viewspace-2661083/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql怎麼插入空記錄MySql
- 微信影片聊天記錄怎麼錄製
- GitHub學習除錯記錄Github除錯
- win10怎麼徹底清楚qq記錄_win10qq記錄怎麼刪除Win10
- 強爸帶娃記之寶寶便秘怎麼破
- 小紅書破圈,沒那麼簡單
- windows10錄屏沒聲音怎麼辦_windows10錄屏沒聲音的解決方法Windows
- win10錄屏沒有聲音怎麼辦 win10錄屏沒聲音的解決方法Win10
- 沒有記憶體,怎麼還能跑程式呢記憶體
- 記錄我github的hexo的搭建Blog之路GithubHexo
- 騰訊會議錄屏沒聲音怎麼辦?騰訊會議錄屏沒聲音的解決方法
- win10 雪破圖怎麼解決_win10雪破圖是怎麼回事Win10
- win10錄屏沒影片聲音怎麼辦 win10電腦錄屏沒有聲音解決方法Win10
- 清除 GitHub 歷史記錄的隱私資訊Github
- 《破曉傳說》銷量破百萬 創系列記錄
- 怎麼錄製直播影片,虎牙直播影片怎麼錄製
- win10錄屏沒視訊聲音怎麼辦 win10電腦錄屏沒有聲音解決方法Win10
- GitHub Pages + Hexo搭建個人部落格網站-github風格-採坑記錄GithubHexo網站
- 海量資料的分頁怎麼破?
- 怎麼錄製直播影片,鬥魚直播影片怎麼錄製
- win10 ink工作區沒有備忘錄怎麼辦_win10 ink工作區沒有備忘錄解決方法Win10
- win10怎麼檢視wifi使用記錄_win10wifi使用記錄如何查詢Win10WiFi
- win10錄屏快捷鍵是什麼 win10錄屏快捷鍵按了沒反應怎麼回事Win10
- win10錄屏沒聲音怎麼辦 win10電腦錄屏錄不到聲音如何修復Win10
- 這個網站怎麼沒有一個目錄,告我當前位置?網站
- 比亞迪宋怎麼安裝行車記錄儀?
- win10如何qq歷史聊天記錄_win10怎麼查詢qq以前聊天記錄Win10
- win10程式使用記錄怎麼檢視 win10程式執行記錄在哪檢視Win10
- 筆記本怎麼錄屏 膝上型電腦自帶錄屏功能教程筆記
- windows10沒有錄音機怎麼辦_win10找不到錄音機找回操作方法WindowsWin10
- win10怎麼錄螢幕影片帶聲音 錄製影片沒有聲音的解決方法Win10
- Git倉庫的提交記錄亂成一團,怎麼辦?Git
- 面試對話記錄,如果是你會怎麼回答?面試
- win10 怎麼檢視開關機記錄_win10如何檢視開關機記錄Win10
- win10 播放器清空記錄方法 win10 影片播放器播放記錄怎麼清除Win10播放器
- win10怎麼清除更新歷史記錄 win10電腦如何清除更新歷史記錄Win10
- Win10時間軸記錄怎麼刪除?Win10時間線記錄的清除方法Win10
- win10檢視軟體使用記錄方法 win10怎麼檢視軟體使用記錄Win10