Githubでコミットの日付を日/時間の精度で見る方法はありますか?古いコミットは、実際の日付を表示するのではなく、「2年前」などの「人間が読める」形式で表示されます。
Githubで実際の日付を表示できない場合、git clone
よりも簡単な回避策がありますか?
マウスを2 years ago
の上に置くと、タイムスタンプが表示されます。
テキストがdatetime
属性の下にiso値を持つ<time>
要素でラップされているにもかかわらず、「2年前」にカーソルを合わせると実際の日付が表示されません。
私がやったように、他のすべてが失敗した場合は、テキストを調べてみてください。
サンプル要素:
<time datetime="2015-01-22T20:48:13Z" is="relative-time" title="Jan 22, 2015, 2:48 PM CST">7 days ago</time>
次のjsブックマークを使用できます。
javascript:(function() {
var relativeTimeElements = window.document.querySelectorAll("relative time");
relativeTimeElements.forEach(function(timeElement){
timeElement.innerHTML = timeElement.innerHTML +" -- "+ timeElement.title;
})
}()
)
https://Gist.github.com/PhilippGrulich/7051832b344d4cbd30fbfd68524baa38
正しい時間を追加します:このように:21時間前にコミット-2017年2月15日、15:49 MEZ
Chromeで@odonyのTamperMonkey/Greasemonkeyスクリプトを試しましたが、動作させることができませんでした。 detachCallback()
は認識されませんでした。したがって、コールバックをデタッチする代わりに、<relative-time>
ノードを単に置き換えました。
// ==UserScript==
// @name Github: always show absolute times
// @match https://github.com/*
// ==/UserScript==
(function() {
document.querySelectorAll("relative-time").forEach(function(el) {
var parent = el.parentNode;
var timestamp = el.title;
var span = document.createElement("span");
span.innerHTML = timestamp;
parent.removeChild(el);
parent.appendChild(span);
});
})();
申し訳ありませんが、他のブラウザでこれをテストしたことはありませんが、これは基本的なjavascriptなので、動作するはずです。 :)
ホバリングせずに日付/時刻を永続的に表示する方法を探している場合(スクリーンショットなど)、上記のJavaScriptベースのソリューションは最新のGithub HTMLと一致しません(コメントを参照)。また、タイマーに基づいてタイムスタンプが自動更新されるという事実を考慮していませんでした( "X分前"は毎分変更する必要があります) 、定期的に再表示されます。
次のスクリプトは、2017-10-30の時点でGithubで動作するようです:
(function() {
var els = window.document.querySelectorAll("time-ago,relative-time");
els.forEach(function(el) {
el.innerHTML = el._date; // set original timestamp
el.detachedCallback(); // stop auto-updates
});
})();
他のJSベースのソリューションと同様に、コードの前にjavascript:
を付けることで、これをbookmarkletにすることができます。
これをpermanentに修正したい場合は、次のようにTamperMonkey/Greasemonkeyスクリプトとして保存できます。
// ==UserScript==
// @name Github: always show absolute times
// @match https://github.com/*
// ==/UserScript==
(function() {
var els = window.document.querySelectorAll("time-ago,relative-time");
els.forEach(function(el) {
el.innerHTML = el._date; // set original timestamp
el.detachedCallback(); // stop auto-updates
});
})();
Gitlab 10では、これを使用して、ツールチップタイトルを標準テキストとして要素に追加しました。
javascript:(function() {
var relativeTimeElements = window.document.querySelectorAll("time");
relativeTimeElements.forEach(function(timeElement){
timeElement.innerHTML = timeElement.innerHTML +" -- "+ timeElement.getAttribute('data-original-title');
})
}());