web-dev-qa-db-ja.com

githubの「実際の」コミット日(時間/日)を参照してください

Githubでコミットの日付を日/時間の精度で見る方法はありますか?古いコミットは、実際の日付を表示するのではなく、「2年前」などの「人間が読める」形式で表示されます。

old github commit

Githubで実際の日付を表示できない場合、git cloneよりも簡単な回避策がありますか?

139
goncalopp

マウスを2 years agoの上に置くと、タイムスタンプが表示されます。

261
Matt S.

テキストが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>

7
Walter Roman

次の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

3
Philipp Grulich

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なので、動作するはずです。 :)

1
Mr. T

ホバリングせずに日付/時刻を永続的に表示する方法を探している場合(スクリーンショットなど)、上記の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
    });
})();
1
odony

Gitlab 10では、これを使用して、ツールチップタイトルを標準テキストとして要素に追加しました。

javascript:(function() { 
  var relativeTimeElements = window.document.querySelectorAll("time");
  relativeTimeElements.forEach(function(timeElement){
    timeElement.innerHTML = timeElement.innerHTML +" -- "+ timeElement.getAttribute('data-original-title');
  })
}());
0
Xeno