Remix.run Logo
phplovesong 4 hours ago

How does the database of code work with git? Should you share it or version it too?

aryairani 4 hours ago | parent | next [-]

No, Unison has its own native version control, and a code sharing platform at https://share.unison-lang.org

spooky_deep 3 hours ago | parent [-]

What’s a good way to include Unison code in a more traditional Git monorepo?

pchiusano 2 hours ago | parent [-]

That depends. What are you wanting to accomplish more broadly with the integration?

I'll mention a couple things that might be relevant - you could have the git repo reference a branch or an immutable namespace hash on Unison Share. And as part of your git repo's CI, pull the Unison code and compile and/or deploy it or whatever you need to do.

There's support for webhooks on Unison Share as well, so you can do things like "open a PR to bump the dependency on the git repo whenever a new commit is pushed to branch XYZ on Unison Share".

Basically, with webhooks on GH and/or Unison Share and a bit of scripting you can set up whatever workflow you want.

Feel free to come by the Discord https://unison-lang.org/discord if you're wanting to try out Unison but not sure how best to integrate with an existing git repo.

rlmark 4 hours ago | parent | prev [-]

The tool you use to interact with the code database keeps track of the changes in an append-only log - if you're familiar with git, the commands for tracking changes echo those of git (push, pull, merge, etc) and many of them integrate with git tooling.

The projects in a codebase can absolutely be shared and versioned as well. Here's a log of release artifacts from a library as an example: https://share.unison-lang.org/@unison/base/releases.