{"id":25006873,"url":"https://github.com/charleschiugit/logseq-git-sync-101","last_synced_at":"2025-05-16T11:06:44.681Z","repository":{"id":37034105,"uuid":"484705892","full_name":"CharlesChiuGit/Logseq-Git-Sync-101","owner":"CharlesChiuGit","description":"This repo aims to help Logseq users to sync their data with Git and GitHub.","archived":false,"fork":false,"pushed_at":"2024-04-18T15:07:10.000Z","size":4254,"stargazers_count":1204,"open_issues_count":8,"forks_count":100,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-04-12T08:18:19.720Z","etag":null,"topics":["git","git-hooks","github","logseq","termux","workingcopy"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CharlesChiuGit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-23T09:41:30.000Z","updated_at":"2025-04-10T11:48:48.000Z","dependencies_parsed_at":"2023-02-08T06:46:28.927Z","dependency_job_id":"ef6931e3-21a2-433d-bd02-d576cdb51d2e","html_url":"https://github.com/CharlesChiuGit/Logseq-Git-Sync-101","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CharlesChiuGit%2FLogseq-Git-Sync-101","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CharlesChiuGit%2FLogseq-Git-Sync-101/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CharlesChiuGit%2FLogseq-Git-Sync-101/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CharlesChiuGit%2FLogseq-Git-Sync-101/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CharlesChiuGit","download_url":"https://codeload.github.com/CharlesChiuGit/Logseq-Git-Sync-101/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254518383,"owners_count":22084374,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","git-hooks","github","logseq","termux","workingcopy"],"created_at":"2025-02-05T01:52:08.165Z","updated_at":"2025-05-16T11:06:39.661Z","avatar_url":"https://github.com/CharlesChiuGit.png","language":"Shell","readme":"\u003ch1 align=\"center\"\u003e\r\n    Logseq-Git-Sync-101\r\n\u003c/h1\u003e\r\n\r\n\u003cp align=\"center\"\u003e\r\n    \u003ca href=\"https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/stargazers\"\u003e\r\n    \u003cimg\r\n        alt=\"GitHub Repo stars\"\r\n        src=\"https://img.shields.io/github/stars/CharlesChiuGit/Logseq-Git-Sync-101?color=957FB8\u0026logo=starship\u0026style=for-the-badge\"\u003e\r\n    \u003c/a\u003e\r\n    \u003ca href=\"https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/issues\"\u003e\r\n    \u003cimg\r\n        alt=\"GitHub issues\"\r\n        src=\"https://img.shields.io/github/issues-raw/CharlesChiuGit/Logseq-Git-Sync-101?color=DCA561\u0026logo=gitbook\u0026logoColor=d9e0ee\u0026style=for-the-badge\"\u003e\r\n    \u003ca href=\"https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/contributors\"\u003e\r\n    \u003cimg\r\n        alt=\"GitHub contributors\"\r\n        src=\"https://img.shields.io/github/contributors/CharlesChiuGit/Logseq-Git-Sync-101?color=%2398BB6C\u0026logo=opensourceinitiative\u0026logoColor=d9e0ee\u0026style=for-the-badge\"\u003e\r\n    \u003c/a\u003e\r\n    \u003cimg\r\n        alt=\"GitHub code size in bytes\"\r\n        src=\"https://img.shields.io/github/languages/code-size/CharlesChiuGit/Logseq-Git-Sync-101?color=%237E9CD8\u0026logo=gitlfs\u0026logoColor=d9e0ee\u0026style=for-the-badge\"\u003e\r\n\u003c/p\u003e\r\n\r\n\u003cp align=\"center\"\u003e\r\n    \u003cimg\r\n        alt=\"shell script\"\r\n        src=\"https://img.shields.io/badge/shell_script-%23121011.svg?style=for-the-badge\u0026logo=gnu-bash\u0026logoColor=white\"\u003e\r\n    \u003ca href=\"https://logseq.com/#/\"\u003e\r\n    \u003cimg\r\n        alt=\"Logseq\"\r\n        src=\"https://img.shields.io/static/v1?label=\u0026message=LOGSEQ\u0026color=002B35\u0026style=for-the-badge\"\u003e\r\n    \u003c/a\u003e\r\n\r\n\u003c/a\u003e\r\n\r\n## Description\r\n\r\nThis repo aims to help Logseq users to sync their data via Git and GitHub.\r\n\r\n\u003cp align=\"center\"\u003e\r\n        \u003cimg src=\"./src/ppap-meme.svg\" style=\"width:50%\"/\u003e\r\n\u003c/p\u003e\r\n\r\n## Why use Git + GitHub to sync Logseq graph?\r\n\r\n\u003cp align=\"center\"\u003e\r\n      \u003cimg src=\"./src/self-managed-sync-v2.png\" style=\"width:100%\"/\u003e\r\n\u003c/p\u003e\r\n\r\n\u003c!-- \u003cblockquote align=\"center\"\u003e --\u003e\r\n\u003c!-- Self Managed Sync Diagram, by @danzu --\u003e\r\n\u003c!-- \u003c/blockquote\u003e --\u003e\r\n\r\n\u003cdiv align=\"center\"\u003e\r\n    \u003ch6\u003e Self Managed Sync Diagram, by @danzu\u003c/h6\u003e\r\n\u003c/div\u003e\r\n\r\nFrom the above diagram, it's pretty obvious that **Git** is the most robust way to sync your graph. iCloud is slow and problematic, and [Syncthing](https://syncthing.net/downloads/) is not available on iOS/iPadOS.\r\n\r\nHowever, Git is quite scary for non-programmers, so this doc is here to help!\r\n\r\n---\r\n\r\n## 🎩 Suit up\r\n\r\nPlease check [Prerequisite](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/Prerequisite) and get yourself a cup of coffee ☕.\r\n\r\n## 🤔 So how does this method work?\r\n\r\nPlease check [Workflow](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/%F0%9F%AA%9C-Workflow).\r\n\r\n## Now you need another cup of coffee\r\n\r\n### \u003cimg src=\"https://raw.githubusercontent.com/CharlesChiuGit/Logseq-Git-Sync-101/main/src/Windows.svg\" width=\"25\"/\u003e For Windows users\r\n\r\nPlease check [Windows](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-Windows-users).\r\n\r\n### \u003cimg src=\"https://raw.githubusercontent.com/CharlesChiuGit/Logseq-Git-Sync-101/main/src/Apple.svg\" width=\"25\"/\u003e For macOS users\r\n\r\nPlease check [macOS](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-macOS-users).\r\n\r\n### \u003cimg src=\"https://raw.githubusercontent.com/CharlesChiuGit/Logseq-Git-Sync-101/main/src/Apple.svg\" width=\"25\"/\u003e For iOS/iPadOS users\r\n\r\nPlease check [iOS/iPadOS](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-iOS-iPadOS-users).\r\n\r\n### \u003cimg src=\"https://raw.githubusercontent.com/CharlesChiuGit/Logseq-Git-Sync-101/main/src/android.svg\" width=\"25\"/\u003e For Android users\r\n\r\nPlease check [Android](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-Android-users).\r\n\r\n### \u003cimg src=\"https://raw.githubusercontent.com/CharlesChiuGit/Logseq-Git-Sync-101/main/src/linux.svg\" width=\"25\"/\u003e For Linux users\r\n\r\n\u003cdetails\u003e\r\n    \u003csummary\u003eLinux users click here\u003c/summary\u003e\r\nIf you are a Linux user, why are you still watching this repo? Shooo. 😎\r\n\r\nLol, just a joke. Take the steps in macOS section as reference if you need it.\r\n\r\n\u003c/details\u003e\r\n\r\n## 💥 Omg, Something blows up\r\n\r\nPlease check [FAQ](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/%F0%9F%92%A5-FAQ).\r\n\r\n---\r\n\r\n## Change log\r\n\r\n- 2024-04-18: Add ssh config in [Workflow](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/%F0%9F%AA%9C-Workflow) to avoid [Permission denied:(publickey)](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/%F0%9F%92%A5-FAQ#how-to-fix-error-permission-deniedpublickey) issue.\r\n- 2023-12-27: Fix [For Android users](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-Android-users) `Termux` path to `~/storage/shared` to avoid issue#34.\r\n- 2023-11-21: Update [For iOS/iPadOS users (Working-Copy)](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-iOS-iPadOS-users-(Working-Copy)) for updated version of Working Copy.\r\n- 2023-10-21: Add deprecation warning at [For iOS/iPadOS users (a-Shell-Deprecated)](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/For-iOS-iPadOS-users-\\(a-Shell,-Deprecated\\))\r\n- 2023-10-12: Add [Why and how to fix error: \"fatal: not in a git directory\"?](https://github.com/CharlesChiuGit/Logseq-Git-Sync-101/wiki/%F0%9F%92%A5-FAQ#why-and-how-to-fix-error-fatal-not-in-a-git-directory) to `FAQ`.\r\n- 2023-01-09: Add `a-Shell` support for iOS/iPadOS users as a free althernative.\r\n- 2022-11-01: Update `Prerequisite`, `For macOS users`, `For Android users`, `FAQ` wiki.\r\n\r\n---\r\n\r\n## 🪨 References\r\n\r\n- [Working Copy on iOS](https://discord.com/channels/725182569297215569/766475028978991104/946787658405908560), by @danieltomasz[^1].\r\n- [Steps to auto sync iOS + Windows](https://discord.com/channels/725182569297215569/924907384730689566/966343847934324776), by @Caps[^3].\r\n- [Gitea - self-hosted git server](https://discord.com/channels/725182569297215569/924907384730689566/963840487712780320), by @Sawhney[^2].\r\n- [Self Managed Sync + Android setup](https://discord.com/channels/725182569297215569/966983361249816586), by @danzu[^5] and @Abulafia[^4].\r\n- [Git hooks settings](https://discord.com/channels/725182569297215569/960982172683100160)\r\n- [What is GitHub?](https://kinsta.com/knowledgebase/what-is-github/)\r\n- [How does Git work?](https://medium.com/@sahoosunilkumar/how-does-git-works-5cc8444ea383)\r\n- [Repository size limits for GitHub.com](https://stackoverflow.com/questions/38768454/repository-size-limits-for-github-com)\r\n- [About large files on GitHub](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github)\r\n- [Differences between CRLF and LF](https://violin-tao.blogspot.com/2016/05/crlflf-bug.html), in Chinese.\r\n- [Alternative way of git syncing on iOS using a-shell for free](https://discuss.logseq.com/t/alternative-way-of-git-syncing-on-ios-using-a-shell-for-free/8570), by Petrus Hyvönen[^7].\r\n- [[Tutorial] How to enable automatic logseq graph sync on iOS with git \u0026 shortcut](https://www.reddit.com/r/logseq/comments/105kqts/tutorial_how_to_enable_automatic_logseq_graph/), by @sickmz[^8].\r\n\r\n## 🎉 Acknowledgment\r\n\r\nCredits to @danieltomasz[^1], @Sawhney[^2], @Caps[^3], @Abulafia[^4] @qwxlea[^5] for the workflow build up. And credits to @danzu[^6] for the incredible diagram!\r\n\r\nFYI, those IDs are IDs in [Logseq Discord Server](https://discord.gg/bZ2jF9taUg) if not specified.\r\n\r\n[^1]: danieltomasz#5748\r\n[^2]: Sawhney#7320\r\n[^3]: Caps#0219\r\n[^4]: Abulafia#3734\r\n[^5]: qwxlea#3490\r\n[^6]: danzu#6567\r\n[^7]: https://discuss.logseq.com/u/Petrush\r\n[^8]: https://github.com/sickmz\r\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcharleschiugit%2Flogseq-git-sync-101","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcharleschiugit%2Flogseq-git-sync-101","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcharleschiugit%2Flogseq-git-sync-101/lists"}