{"id":27637010,"url":"https://github.com/juliofilizzola/bitforge","last_synced_at":"2026-04-29T15:40:16.515Z","repository":{"id":288425832,"uuid":"968014796","full_name":"juliofilizzola/BitForge","owner":"juliofilizzola","description":"Um Git minimalista, escrito do zero em C. Para quem quer entender o Git por dentro, byte por byte.","archived":false,"fork":false,"pushed_at":"2025-04-22T11:21:17.000Z","size":1270,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-23T21:15:43.210Z","etag":null,"topics":["c","git"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/juliofilizzola.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2025-04-17T11:11:14.000Z","updated_at":"2025-04-22T11:21:21.000Z","dependencies_parsed_at":"2025-04-18T03:11:14.259Z","dependency_job_id":"7d46925c-a32f-4a63-969d-a46dda1e9cc7","html_url":"https://github.com/juliofilizzola/BitForge","commit_stats":null,"previous_names":["juliofilizzola/bitforge"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliofilizzola%2FBitForge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliofilizzola%2FBitForge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliofilizzola%2FBitForge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/juliofilizzola%2FBitForge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/juliofilizzola","download_url":"https://codeload.github.com/juliofilizzola/BitForge/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250514777,"owners_count":21443219,"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":["c","git"],"created_at":"2025-04-23T21:15:47.769Z","updated_at":"2026-04-29T15:40:16.508Z","avatar_url":"https://github.com/juliofilizzola.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ⚙️ BitForge\n\n\u003cimg alt=\"BIT FORGE\" height=\"180\" src=\"./asserts/bitForge.png\" title=\"BIT FORGER IMG\" width=\"180\"/\u003e\n\n\n\u003e Um Git minimalista, escrito do zero em C.  \n\u003e Para quem quer entender o Git por dentro, byte por byte.\n\n---\n\n## 🚀 Sobre o projeto\n\n**BitForge** é uma recriação leve e simplificada do Git, feita em linguagem C.  \nEle mostra como o Git funciona nos bastidores — criando blobs, commits e controlando versões sem magia.\n\n---\n\n## 📦 Funcionalidades\n\n- `bitforge init` — Inicializa um repositório `.git/`\n- `bitforge add \u003carquivo\u003e` — Cria um blob com hash SHA-1 do conteúdo\n- `bitforge commit -m \"\u003cmensagem\u003e\"` — Cria um commit que referencia o blob\n- (em breve) `bitforge log` — Visualiza o histórico de commits\n\n---\n\n## 🧠 Conceitos explorados\n\n- Estrutura interna do Git (`.git/objects`, `HEAD`, `refs`)\n- Hashing com SHA-1 (`openssl`) (pending)\n- Compressão de objetos (`zlib`) (pending)\n- Manipulação direta de arquivos binários (pending)\n- Design minimalista e performático (pending)\n\n---\n\n## 🧪 Como compilar\n\n```bash\nsudo apt install libssl-dev zlib1g-dev\ngcc mygit-init.c -o bitforge-init -lssl -lcrypto -lz\ngcc mygit-add.c -o bitforge-add -lssl -lcrypto -lz\ngcc mygit-commit.c -o bitforge-commit -lssl -lcrypto -lz\ngcc mygit-log.c -o bitforge-log -lssl -lcrypto -lz\n```\n\n## 🛠️ Como usar\n\n```aiignore\n./bitforge-init\n./bitforge-add hello.txt\n./bitforge-commit -m \"Primeiro commit no universo BitForge\"\n\n```\n\n## 🧩 Por que usar?\nPorque entender o Git de verdade significa ver o que acontece sem o “por trás das cortinas”.\nBitForge é o playground perfeito para isso. Use, hackeie, quebre — e aprenda.\n\n## 📚 Referências\n- Pro Git Book\n- Git Internals\n- Código-fonte original do Git (em C)\n\n## ⚡ Licença\nMIT. Faça o que quiser. Só não diga que foi fácil. 😄\n\n## 👨‍💻 Autor\nFeito por alguém que curte C, versões, e um bom desafio.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliofilizzola%2Fbitforge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjuliofilizzola%2Fbitforge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjuliofilizzola%2Fbitforge/lists"}