[{"content":" ⚡ TL;DR\ngit rebase -i HEAD~N or\ngit rebase -i \u0026lt;starting-commit-hash\u0026gt;^ git commit --amend --author=\u0026#34;Name \u0026lt;email\u0026gt;\u0026#34; git rebase --continue git push --force ⚠️ Warning: Modifying commits that have already been pushed to a remote repository can cause history conflicts with collaborators. Use this only when working alone!\n📝 Problem: Incorrect Git Author Information When working on the same GitHub repository across different computers (like work and personal), you might find that your commit author information gets mixed up.\nIn my case, I had set my company account\u0026rsquo;s name and email in the global configuration for convenience, and that\u0026rsquo;s where the trouble began.\nAs a result, my commits were being recorded with my company email, making it appear as if multiple people were contributing to the project.\nI had to go through each commit to correct the author information and then update the history on GitHub. Here\u0026rsquo;s how I did it:\n🧩 Situation Summary Personal and company account information got mixed up in commits Wrong names appeared in GitHub Contributors Decided to clean up the commit history 🛠️ Solution Process 1. Select Commits with Interactive Rebase git rebase -i HEAD~N Or if you want to start rebasing from a specific commit:\ngit rebase -i abc1234^ The ^ symbol means \u0026ldquo;start rebasing from the commit before this one.\u0026rdquo;\nOr if you want to rebase from the very first commit:\ngit rebase -i --root When the list appears, change pick to edit and save.\n💡 Quick Edit Tip With cursor on pick: dw to delete pick → i e to type just the \u0026rsquo;e\u0026rsquo; of edit (just \u0026rsquo;e\u0026rsquo; works too) In other words: move cursor, dw, i, e, then save (:wq) and you\u0026rsquo;re done!\n2. Modify Author Information git commit --amend --author=\u0026#34;New Name \u0026lt;newemail@example.com\u0026gt;\u0026#34; This command overwrites the author information for that specific commit with your specified name and email.\nThe author you set here only applies to this specific commit, so you don\u0026rsquo;t need to modify your global or local settings.\n3. Continue the Rebase git rebase --continue After modifying one commit, use this command to move to the next one.\nRepeat this process for all commits you want to fix.\n4. Update GitHub git push origin +main Finally, you need to force push to update the remote repository with the new history.\n+main is equivalent to --force and will overwrite the existing history.\n🧭 Conclusion After this experience, I removed all global settings.\nInstead, I now manage name and email settings locally in .git/config for each project.\nIt\u0026rsquo;s a bit more work, but it\u0026rsquo;s a preventive measure to avoid repeating this mistake.\n🗂️ TMI\nBy the way\u0026hellip; if you\u0026rsquo;ve already pushed commits to GitHub and they\u0026rsquo;ve registered you as a Contributor, fixing the commits won\u0026rsquo;t change the Contributor list.\nI ended up deleting the repository and creating a new one\u0026hellip; 😇\n(This is really a last resort.)\nThis experience taught me how a small mistake can mess up your history.\nI hope this guide helps if you find yourself in a similar situation.\n📚 References\nThis post was written with reference to madplay\u0026rsquo;s blog.\n","permalink":"https://seobaeksol.github.io/posts/fix-wrong-git-author/","summary":"\u003cblockquote\u003e\n\u003cp\u003e⚡ TL;DR\u003c/p\u003e\n\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003egit rebase -i HEAD~N\n\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cp\u003eor\u003c/p\u003e\n\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003egit rebase -i \u0026lt;starting-commit-hash\u0026gt;^\n\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003egit commit --amend --author\u003cspan style=\"color:#f92672\"\u003e=\u003c/span\u003e\u003cspan style=\"color:#e6db74\"\u003e\u0026#34;Name \u0026lt;email\u0026gt;\u0026#34;\u003c/span\u003e\n\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003egit rebase --continue\n\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cdiv class=\"highlight\"\u003e\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode class=\"language-bash\" data-lang=\"bash\"\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003egit push --force\n\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\u003cp\u003e⚠️ \u003cstrong\u003eWarning:\u003c/strong\u003e Modifying commits that have already been pushed to a remote repository can cause history conflicts with collaborators. Use this only when working alone!\u003c/p\u003e\u003c/blockquote\u003e\n\u003chr\u003e\n\u003ch2 id=\"-problem-incorrect-git-author-information\"\u003e📝 Problem: Incorrect Git Author Information\u003c/h2\u003e\n\u003cp\u003eWhen working on the same GitHub repository across different computers (like work and personal), you might find that your commit author information gets mixed up.\u003cbr\u003e\nIn my case, I had \u003cstrong\u003eset my company account\u0026rsquo;s name and email in the global configuration\u003c/strong\u003e for convenience, and that\u0026rsquo;s where the trouble began.\u003c/p\u003e","title":"How to Fix Wrong Git Author Information in Commits"},{"content":" A look into the motivation, technical stack, and UX design philosophy behind Hyper-Dir\n🧩 Why I Wanted a Better File Explorer The default Windows File Explorer is okay — but as a developer, I kept running into limitations.\nNo tab support Poor keyboard navigation No built-in dual/multi-pane view Difficult to customize or extend Eventually, I asked myself:\n“What if I just built my own?”\n🚀 The Birth of Hyper-Dir That’s how Hyper-Dir was born.\nNot just a file explorer, but one that’s developer-friendly, lightning fast, extensible, and keyboard-first.\nInspired by tools like VSCode.\nProject Goals ✅ Full keyboard navigation ✅ Multiple panels \u0026amp; tabs ✅ Plugin-based extensibility ✅ Clean and intuitive UX ✅ Native-like performance 🛠 Why I Chose Rust, Tauri, and React 🦀 Rust I was drawn to Rust for its performance and memory safety.\nWorking with the file system, especially on Windows, requires low-level control — and Rust gives that without sacrificing safety.\n🪟 Tauri Compared to Electron, Tauri is:\nLighter Faster More native-feeling Best of all, it plays beautifully with Rust.\n⚛️ React For the frontend, I went with React.\nFast development Huge ecosystem Well-suited for building extensible UI, like VSCode extensions 🧠 UI/UX Inspired by VSCode Hyper-Dir\u0026rsquo;s interface is heavily inspired by Visual Studio Code.\nSidebar → Directory tree Tab bar → Navigate multiple folders Main panel → File list / preview Status bar → Path info, selection details Shortcuts → Ctrl+P, Ctrl+B, and more Developers are already familiar with VSCode.\nA familiar layout means less friction and better usability.\n🗺 Roadmap Ahead Hyper-Dir is still early in development, but here’s what’s coming next:\nGit integration \u0026amp; embedded terminal Custom plugin system Favorites and history Advanced filtering \u0026amp; fuzzy search Extended command palette 💬 Closing Thoughts As a developer, building the tools I use every day is incredibly rewarding.\nHyper-Dir started as a way to solve my own pain points — but I hope it becomes a helpful tool for others too.\nCurious about the project or want to contribute?\nFeedback, issues, and PRs are always welcome!\n🧑‍💻 Check out the GitHub repo\n","permalink":"https://seobaeksol.github.io/posts/2025-04-29-why-hyper-dir/","summary":"\u003cblockquote\u003e\n\u003cp\u003eA look into the motivation, technical stack, and UX design philosophy behind Hyper-Dir\u003c/p\u003e\u003c/blockquote\u003e\n\u003ch2 id=\"-why-i-wanted-a-better-file-explorer\"\u003e🧩 Why I Wanted a Better File Explorer\u003c/h2\u003e\n\u003cp\u003eThe default Windows File Explorer is okay — but as a developer, I kept running into limitations.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNo tab support\u003c/li\u003e\n\u003cli\u003ePoor keyboard navigation\u003c/li\u003e\n\u003cli\u003eNo built-in dual/multi-pane view\u003c/li\u003e\n\u003cli\u003eDifficult to customize or extend\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eEventually, I asked myself:\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e“What if I just built my own?”\u003c/p\u003e\u003c/blockquote\u003e\n\u003chr\u003e\n\u003ch2 id=\"-the-birth-of-hyper-dir\"\u003e🚀 The Birth of Hyper-Dir\u003c/h2\u003e\n\u003cp\u003eThat’s how \u003cstrong\u003eHyper-Dir\u003c/strong\u003e was born.\u003cbr\u003e\nNot just a file explorer, but one that’s \u003cstrong\u003edeveloper-friendly, lightning fast, extensible\u003c/strong\u003e, and \u003cem\u003ekeyboard-first\u003c/em\u003e.\u003cbr\u003e\nInspired by tools like VSCode.\u003c/p\u003e","title":"Why I Started Building a Windows File Explorer with Rust"},{"content":"Welcome! It\u0026rsquo;s my first blog post!\n1 2 let test = 10; console.log(\u0026#34;test -\u0026gt;\u0026#34;, test); ","permalink":"https://seobaeksol.github.io/posts/2025-04-29-hello-world/","summary":"\u003ch1 id=\"welcome\"\u003eWelcome!\u003c/h1\u003e\n\u003cp\u003eIt\u0026rsquo;s my first blog post!\u003c/p\u003e\n\u003cdiv class=\"highlight\"\u003e\u003cdiv style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\n\u003ctable style=\"border-spacing:0;padding:0;margin:0;border:0;\"\u003e\u003ctr\u003e\u003ctd style=\"vertical-align:top;padding:0;margin:0;border:0;\"\u003e\n\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode\u003e\u003cspan style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f\"\u003e1\n\u003c/span\u003e\u003cspan style=\"white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#7f7f7f\"\u003e2\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/td\u003e\n\u003ctd style=\"vertical-align:top;padding:0;margin:0;border:0;;width:100%\"\u003e\n\u003cpre tabindex=\"0\" style=\"color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;\"\u003e\u003ccode class=\"language-ts\" data-lang=\"ts\"\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003e\u003cspan style=\"color:#66d9ef\"\u003elet\u003c/span\u003e \u003cspan style=\"color:#a6e22e\"\u003etest\u003c/span\u003e \u003cspan style=\"color:#f92672\"\u003e=\u003c/span\u003e \u003cspan style=\"color:#ae81ff\"\u003e10\u003c/span\u003e;\n\u003c/span\u003e\u003c/span\u003e\u003cspan style=\"display:flex;\"\u003e\u003cspan\u003e\u003cspan style=\"color:#a6e22e\"\u003econsole\u003c/span\u003e.\u003cspan style=\"color:#a6e22e\"\u003elog\u003c/span\u003e(\u003cspan style=\"color:#e6db74\"\u003e\u0026#34;test -\u0026gt;\u0026#34;\u003c/span\u003e, \u003cspan style=\"color:#a6e22e\"\u003etest\u003c/span\u003e);\n\u003c/span\u003e\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n\u003c/div\u003e\n\u003c/div\u003e","title":"Hello World"},{"content":"","permalink":"https://seobaeksol.github.io/profile/","summary":"","title":"Profile"}]