# Git help: how to edit an older release of a package

**URL:** https://discourse.julialang.org/t/git-help-how-to-edit-an-older-release-of-a-package/7627
**Category:** General Usage
**Created:** [December 8, 2017, 5:00pm UTC](https://discourse.julialang.org/t/git-help-how-to-edit-an-older-release-of-a-package/7627 "2017-12-08T17:00:28Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![cormullion](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cormullion/32/49131_2.png) [@cormullion](https://discourse.julialang.org/u/cormullion)
#### Post date: [December 8, 2017, 5:00pm UTC](https://discourse.julialang.org/t/git-help-how-to-edit-an-older-release-of-a-package/7627/1 "2017-12-08T17:00:28Z")

</div>

I’ve forgotten (or I might not ever have known) how to git-edit an older release of a package without affecting anything else. I’ve got these releases and tags:

 ![luxor-drawing](https://global.discourse-cdn.com/julialang/original/3X/e/e/ee9bf3f012a4d8186345a908f7dc21e5e4bd506a.png)

I want to edit `v0.9.2` to make it work on Julia v0.5. (I think `v0.9.3` didn’t go anywhere.) Sometimes the more you read the more confusing it seems, and it’s easy to dig holes in the wrong places…

---

<div class="post-metadata">

### Author: ![rdeits](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rdeits/32/286_2.png) [@rdeits](https://discourse.julialang.org/u/rdeits)
#### Post date: [December 8, 2017, 5:12pm UTC](https://discourse.julialang.org/t/git-help-how-to-edit-an-older-release-of-a-package/7627/2 "2017-12-08T17:12:35Z")

</div>

While it is possible to change a git tag to refer to another commit, I wouldn’t recommend it. In particular, the Julia package manager associates package versions with specific git SHAs. Editing that release would require changing the associated SHA. That would lead to a situation where two users could both have `Luxor.jl` at `v0.9.2` but have _different_ code, which breaks the whole notion of version numbers being a meaningful description of the exact code a user has.

On the other hand, it looks like v0.9.3 was never merged into METADATA: [https://github.com/JuliaLang/METADATA.jl/pull/11716](https://github.com/JuliaLang/METADATA.jl/pull/11716) , so changing what that tag points to won’t affect the Julia package manager. Why not just make whatever fixes you wanted for 0.9.2, call them v0.9.3 and publish that? You can delete tags directly from github if you don’t want to do it on the command line: [https://github.com/JuliaGraphics/Luxor.jl/releases/tag/v0.9.3](https://github.com/JuliaGraphics/Luxor.jl/releases/tag/v0.9.3) and you can create a new github release (which also creates a git tag automatically) pointing to any commit from [https://github.com/JuliaGraphics/Luxor.jl/releases](https://github.com/JuliaGraphics/Luxor.jl/releases) (just change the option in the drop-down from `master` to whatever commit or branch you’ve pushed your 0.9.3 fixes to).

---

<div class="post-metadata">

### Author: ![cormullion](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cormullion/32/49131_2.png) [@cormullion](https://discourse.julialang.org/u/cormullion)
#### Post date: [December 8, 2017, 5:18pm UTC](https://discourse.julialang.org/t/git-help-how-to-edit-an-older-release-of-a-package/7627/3 "2017-12-08T17:18:04Z")

</div>

Thanks, that sounds like a plan. Will it upset Attobot? (I don’t like to upset Attobot…)

---

<div class="post-metadata">

### Author: ![rdeits](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rdeits/32/286_2.png) [@rdeits](https://discourse.julialang.org/u/rdeits)
#### Post date: [December 8, 2017, 5:19pm UTC](https://discourse.julialang.org/t/git-help-how-to-edit-an-older-release-of-a-package/7627/4 "2017-12-08T17:19:04Z")

</div>

Nah, Attobot’s pretty smart. You’re just doing [GitHub - attobot/attobot: Julia package release bot](https://github.com/attobot/attobot#updatingdeleting-a-release) with a _very_ long delay.
