https://github.com/staab/git-chat
https://github.com/staab/git-chat
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/staab/git-chat
- Owner: staab
- License: mit
- Created: 2016-10-18T03:40:54.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2016-10-24T15:32:01.000Z (almost 10 years ago)
- Last Synced: 2025-03-27T00:54:56.700Z (over 1 year ago)
- Language: JavaScript
- Size: 83 KB
- Stars: 106
- Watchers: 7
- Forks: 10
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# git-chat
This is a chat client built entirely on git. Do be aware that this is totally a joke.
I was inspired to do this by slack - the ultimate abuse of a chat program. With all its integrations, there are ways you can set it up so that all you see is a firehose of worthless data; issue tracker events, version control events - to the point that communication through your chat program becomes difficult.
This is a riff on that - what if instead of using your chat program to browse commit history, you used your commit history to chat?
# Demo
Give it a try! It's pretty simple. Just type this into your terminal:
**Note** the install steps below no longer work, as someone has deleted the git-chat-client user (as was inevitable). To get this working, change the repository url in main.js to a repository you and your chat members have write access to. Don't use a git repository that you care about though, as this will add a new commit message for every chat. Also, you'll need to commit an empty `uuid.txt` file in that directory to get started.
```
git clone https://github.com/staab/git-chat.git
cd git-chat
npm start Anonymous
```
You can set your username if you'd like, by changing that first parameter to `npm start`.
# Known Issues
I'm actually pretty proud of how bad this software is.
- Sometimes it just stops receiving messages. Not sure why
- Doesn't really work cross-platform because it parses `git log` with a very naive regexp, and uses `cd`
- Sometimes it fails on startup (or after) with `can't cd to /path/to/repo`
- Authentication is done by embedding the username and password in the repo url
- Sometimes it double-commits messages because it retries on failed pushes, which re-commits
- If you delete uuid.txt it breaks everything.
# Disclaimer
This is a toy. It's not tested, it's not secure, it's not fast, it might even be dangerous. Don't use it seriously. But do try it out! Also it might only work on linux.