# Moving a package to new repository

**URL:** https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213
**Category:** General Usage
**Tags:** package
**Created:** [September 4, 2026, 8:21pm UTC](https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213 "2026-09-04T20:21:06Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![aumpierre-unb](https://avatars.discourse-cdn.com/v4/letter/a/df788c/32.png) [@aumpierre-unb](https://discourse.julialang.org/u/aumpierre-unb)
#### Post date: [September 4, 2026, 8:21pm UTC](https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213/1 "2026-09-04T20:21:07Z")

</div>

I am trying to move my a package to a new repo. I sent a PR and after an identity confirmation step I was told that I “need to make all of the existing treehashes available in the new repo.” I have no clue what it means. I’m guessing I need to include fragments like this example in my project.toml:

[[deps.Packagename]]  
deps = []  
git-tree-sha1 = “a07df0937c4b4c4d55a4a2b807c5addaf8d6e3bb”  
uuid = “89d1cb86-bdfb-46ce-bf84-ab7f830013b1”  
version = “0.x.0”

Can anyone give me a hand with this question?  
Thanks!

---

<div class="post-metadata">

### Author: ![mbauman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mbauman/32/31082_2.png) [@mbauman](https://discourse.julialang.org/u/mbauman)
#### Post date: [September 4, 2026, 9:03pm UTC](https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213/2 "2026-09-04T21:03:57Z")

</div>

No, it means that the “new” repository needs to contain a history that contains the previously registered versions. Ideally it’s not really a new repository at all — it should just be the same repository at a new location.

A package repository isn’t _just_ its latest version, it also is the reference point for all previously registered versions, too.

---

<div class="post-metadata">

### Author: ![aumpierre-unb](https://avatars.discourse-cdn.com/v4/letter/a/df788c/32.png) [@aumpierre-unb](https://discourse.julialang.org/u/aumpierre-unb)
#### Post date: [September 4, 2026, 9:17pm UTC](https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213/3 "2026-09-04T21:17:11Z")

</div>

Thank you, it makes sense. I got the “git-tree-sha / uuid / version” for all previous versions. I am guessing that is what is being required, but i I am not sure how I must include that data in PR. Is it the manifest? By the way it is about a Julia package.

---

<div class="post-metadata">

### Author: ![mbauman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mbauman/32/31082_2.png) [@mbauman](https://discourse.julialang.org/u/mbauman)
#### Post date: [September 4, 2026, 9:18pm UTC](https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213/4 "2026-09-04T21:18:54Z")

</div>

No, it’s the git history in the repository itself. You can’t just plop the current state of the files in the repo with a brand new commit, you need the _repository_ to contain the contents of all the prior registered versions, too.

---

<div class="post-metadata">

### Author: ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)
#### Post date: [September 4, 2026, 11:11pm UTC](https://discourse.julialang.org/t/moving-a-package-to-new-repository/139213/5 "2026-09-04T23:11:11Z")

</div>

Note that the process to transfer a repository to another organisation or user is documented in the [README of the General registry](https://github.com/JuliaRegistries/General/blob/5a4e0de00652a255ec0efc9327fea2c60d6b0f63/README.md#how-do-i-transfer-a-package-to-an-organization-or-another-user)

> <https://github.com/JuliaRegistries/General/blob/5a4e0de00652a255ec0efc9327fea2c60d6b0f63/README.md?plain=1#L272-L280>
