# Updating environments

**URL:** <https://discourse.julialang.org/t/updating-environments/28274>\
**Category:** General Usage\
**Tags:** package-manager\
**Created:** [September 2, 2019, 1:06am UTC](https://discourse.julialang.org/t/updating-environments/28274 "2019-09-02T01:06:00Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![hendri54](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/hendri54/32/9621_2.png) [@hendri54](https://discourse.julialang.org/u/hendri54)\
**Post date:** [September 3, 2019, 2:08pm UTC](https://discourse.julialang.org/t/updating-environments/28274/4 "2019-09-03T14:08:36Z")

</div>

It’s complicated… and not really documented anywhere as far as I can tell.

As for making a registry, see [Creating a custom registry](https://discourse.julialang.org/t/creating-a-custom-registry/28007). This worked for me.

For unregistered dependencies, `Pkg` cannot track the chain of dependencies (this is [issue 810](https://github.com/JuliaLang/Pkg.jl/issues/810)). So you need to add unregistered dependencies “by hand” in the right order. For example, if A depends on B depends on C, you need to add C first, then B.

If you want to add a package with a specific commit (rather than the latest), I believe you can specify the the git sha in the `PackageSpec` and then use `add` (I have not tested this, though). But you would still have an install script - I don’t see a way around this without a registry.

But please take what I am saying with more than a grain of salt. I’m not an expert, which is why I pointed you to the “How to activate” thread where more knowledgeable people chimed in.

PS: In case it’s useful, I write up what I have figured out [here](https://lhendricks.org/julia_notes.pdf) (precisely b/c I have trouble finding documentation on workflow issues and also following the various threads on discourse. Perhaps useful.

---

_[View the full topic](https://discourse.julialang.org/t/updating-environments/28274)._
