# Lost with new Pkg3

**URL:** <https://discourse.julialang.org/t/lost-with-new-pkg3/13977>\
**Category:** General Usage\
**Created:** [August 24, 2018, 5:31am UTC](https://discourse.julialang.org/t/lost-with-new-pkg3/13977 "2018-08-24T05:31:04Z")\
**Posts on this page:** 1\
**Showing post:** 9

<div class="post-metadata">

**Author:** ![cstjean](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cstjean/32/1444_2.png) [@cstjean](https://discourse.julialang.org/u/cstjean)\
**Post date:** [August 25, 2018, 1:57am UTC](https://discourse.julialang.org/t/lost-with-new-pkg3/13977/9 "2018-08-25T01:57:11Z")

</div>

This works well for me:

1. For each local package, `activate path_to_package`, then `add path_to_dependency1 path_to_dependency2 ...`
2. In your top-level environment (eg. `v0.7`), `dev path_to_package1`, `dev path_to_package2`, etc.

Then work from your top-level environment. Each package will know how to find its dependencies, and you just told `Pkg` that in the current (top-level) environment, you want to use the development version of all your packages.

What really confused me was that `(MyPackage) pkg> add Dependency1#master` or `dev Dependency1` both look like reasonable ways of telling Julia that MyPackage depends on Dependency1’s latest master/current code. But it’s absolutely not the right way to go about it, even if it misleadingly seems to work in the short term.

---

_[View the full topic](https://discourse.julialang.org/t/lost-with-new-pkg3/13977)._
