-
Notifications
You must be signed in to change notification settings - Fork 171
Random notes for developers
Kazuki Yamaguchi edited this page Feb 18, 2020
·
1 revision
For historical reasons, the master branch cannot go back to the origin of the project in 2001 - it only tracks changes made after 2015.
This is sometimes annoying when we have to look up the changes history, e.g., with git blame
. The following instruction virtually brings the history back by utilizing Git's replace
feature.
NOTE
- This brings back changes history of the code, but at the same time this will hide commits that only happened in this Git repository in 2015-2016.
- The old history was converted from the CVS and Subversion repositories and then concatenated. It might have lost some information during the process. The original can be found at:
- 2001-2003: http://www.nongnu.org/rubypki/
- 2003-2016: https://github.com/ruby/ruby
- Old code might have different licenses.
- The directory structure has changed multiple time. Don't forget
--follow
when you usegit log <file>
orgit blame
.
$ # Fetch two tags: replace-local and replace-foreign
$ git fetch https://github.com/rhenium/ruby-openssl.git tag replace-foreign tag replace-local
$ git log -2 --oneline replace-local
0c136c786bce (tag: replace-local) Sync with Ruby trunk
4a34a978ba93 Use zzak/ruby-openssl-docker@b32c28dbce0c1a4b62f2d9d7f351ea9e6a67d801
$ git log -2 --oneline replace-foreign
4d4ee3b07e5e (tag: replace-foreign) Skip SHA from test_digest_constants for LibreSSL 2.3
8842d715e113 * ext/openssl/lib/openssl/pkey.rb: Added 2048 bit DH parameter. * test/openssl/test_pkey_dh.rb: ditto.
$ git replace replace-local replace-foreign