oliverdavies.uk/content/node.033f0b46-69f9-4ea0-9706-d930e67dd5d8.yml

89 lines
5.2 KiB
YAML
Raw Permalink Normal View History

2025-07-10 00:14:12 +01:00
uuid:
- value: 033f0b46-69f9-4ea0-9706-d930e67dd5d8
langcode:
- value: en
type:
- target_id: daily_email
target_type: node_type
target_uuid: 8bde1f2f-eef9-4f2d-ae9c-96921f8193d7
revision_timestamp:
- value: '2025-05-11T09:00:08+00:00'
revision_uid:
- target_type: user
target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849
revision_log: { }
status:
- value: true
uid:
- target_type: user
target_uuid: b8966985-d4b2-42a7-a319-2e94ccfbb849
title:
- value: 'Merging unrelated histories'
created:
- value: '2024-08-02T00:00:00+00:00'
changed:
- value: '2025-05-11T09:00:08+00:00'
promote:
- value: false
sticky:
- value: false
default_langcode:
- value: true
revision_translation_affected:
- value: true
path:
- alias: /daily/2024/08/02/merging-unrelated-histories
langcode: en
body:
- value: |
<p>My website is built with Sculpin - a static site generator written in PHP.</p>
<p>It uses a some of the same Symfony components as Drupal, uses Twig for templating and YAML for configuration, and has similar features like content types and taxonomies for structuring content.</p>
<p>When I first created my website it was on Drupal 6 and upgraded to Drupal 7 before I started to take an interest in static site generators and later using Jekyll, Sculpin and Astro (and Sculpin, again).</p>
<p>I enjoyed learning Sculpin and took it as an opportunity to learn Twig before Drupal 8, which I spoke about in <a href="/presentations/test-drive-twig-with-sculpin">the first Sculpin talk I gave</a>, at DrupalCamp North in July 2015.</p>
<p>I had three Git repositories, the current Sculpin one, the Astro version, and the original Sculpin version with its first commit in March 2015 - a few months before DrupalCamp North.</p>
<p>Static site generators keep the files in text files intead of a database, so I was wondering if it was possible to merge the repositories together and combine the information whilst keeping the same commit history so existing tags and contribtions would still apply to the original commits.</p>
<p>In short, I was able to do it by adding the old repositories as additional remotes and using the <code>--allow-unrelated-histories</code> <a href="https://git-scm.com/docs/git-merge#Documentation/git-merge.txt---allow-unrelated-histories">option for git merge</a>.</p>
<p>After fixing some minor merge conflicts, everything was merged successfully and I have [one repository containing 5,272 all commits][2], going back to 2015.</p>
<p>This makes it older than <a href="/daily/2023/08/08/8-years-of-dotfiles">my dotfiles repository</a>, which I started in July 2015.</p>
<p>Similar to <a href="/daily/2024/07/31/why-i-use-linux">why I use Linux</a>, I believe in owning your own content rather than relying on third-party platforms, so having all my content and history in one repository is great.</p>
<p>And I learned something new about Git at the same time.</p>
format: full_html
processed: |
<p>My website is built with Sculpin - a static site generator written in PHP.</p>
<p>It uses a some of the same Symfony components as Drupal, uses Twig for templating and YAML for configuration, and has similar features like content types and taxonomies for structuring content.</p>
<p>When I first created my website it was on Drupal 6 and upgraded to Drupal 7 before I started to take an interest in static site generators and later using Jekyll, Sculpin and Astro (and Sculpin, again).</p>
2025-07-16 12:00:00 +01:00
<p>I enjoyed learning Sculpin and took it as an opportunity to learn Twig before Drupal 8, which I spoke about in <a href="/presentations/test-drive-twig-with-sculpin">the first Sculpin talk I gave</a>, at DrupalCamp North in July 2015.</p>
2025-07-10 00:14:12 +01:00
<p>I had three Git repositories, the current Sculpin one, the Astro version, and the original Sculpin version with its first commit in March 2015 - a few months before DrupalCamp North.</p>
<p>Static site generators keep the files in text files intead of a database, so I was wondering if it was possible to merge the repositories together and combine the information whilst keeping the same commit history so existing tags and contribtions would still apply to the original commits.</p>
<p>In short, I was able to do it by adding the old repositories as additional remotes and using the <code>--allow-unrelated-histories</code> <a href="https://git-scm.com/docs/git-merge#Documentation/git-merge.txt---allow-unrelated-histories">option for git merge</a>.</p>
<p>After fixing some minor merge conflicts, everything was merged successfully and I have [one repository containing 5,272 all commits][2], going back to 2015.</p>
2025-07-16 12:00:00 +01:00
<p>This makes it older than <a href="/daily/2023/08/08/8-years-of-dotfiles">my dotfiles repository</a>, which I started in July 2015.</p>
2025-07-10 00:14:12 +01:00
2025-07-16 12:00:00 +01:00
<p>Similar to <a href="/daily/2024/07/31/why-i-use-linux">why I use Linux</a>, I believe in owning your own content rather than relying on third-party platforms, so having all my content and history in one repository is great.</p>
2025-07-10 00:14:12 +01:00
<p>And I learned something new about Git at the same time.</p>
summary: null
field_daily_email_cta: { }