2022-09-06 13:34:25 +00:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "UTF-8" / >
< meta name = "viewport" content = "width=device-width" / >
< link rel = "apple-touch-icon" sizes = "180x180" href = "/apple-touch-icon.png" / >
< link rel = "icon" type = "image/png" sizes = "32x32" href = "/favicon-32x32.png" / >
< link rel = "icon" type = "image/png" sizes = "16x16" href = "/favicon-16x16.png" / >
< link rel = "manifest" href = "/site.webmanifest" / >
< link rel = "me" href = "https://pouet.chapril.org/@gna" / >
< link rel = "stylesheet" href = "https://gna.org/main.css" / >
< link
rel="stylesheet"
media="screen and (max-width: 1300px)"
href="https://gna.org/mobile.css"
/>
< meta name = "referrer" content = "no-referrer-when-downgrade" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< link rel = "stylesheet" href = "https://gna.org/main.css" / >
< link
rel="stylesheet"
media="screen and (max-width: 1300px)"
href="https://gna.org/mobile.css"
/>
< meta name = "referrer" content = "no-referrer-when-downgrade" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
2023-01-09 09:59:43 +00:00
< title > 1.17 breaking changes episode 1: preserving a custom gitconfig | Gna!: Managed Forgejo Hosting < / title >
2022-09-06 13:34:25 +00:00
< meta name = "referrer" content = "no-referrer-when-downgrade" / >
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< meta name = "description" content = "The location of the gitconfig file used by Gitea moved and custom modifications must be manually moved as well." / >
2023-01-09 09:59:43 +00:00
< meta property = "og:title" content = "1.17 breaking changes episode 1: preserving a custom gitconfig | Gna!: Managed Forgejo Hosting " / >
2022-09-06 13:34:25 +00:00
< meta property = "og:type" content = "article" / >
< meta property = "og:url" content = "https://gna.org" / >
< meta property = "og:description" content = "The location of the gitconfig file used by Gitea moved and custom modifications must be manually moved as well." / >
< meta
property="og:site_name"
2023-01-09 09:59:43 +00:00
content="1.17 breaking changes episode 1: preserving a custom gitconfig | Gna!: Managed Forgejo Hosting "
2022-09-06 13:34:25 +00:00
/>
< link
rel="apple-touch-icon"
sizes="57x57"
href="https://gna.org/apple-icon-57x57.png?h=c21de14cfdf862a6472ae977557fa048a7c36d39337e61d3274705e9bd8e857f"
/>
< link
rel="apple-touch-icon"
sizes="60x60"
href="https://gna.org/apple-icon-60x60.png?h=67089d9025a52d0d1ddce450078c7acefe2c150a2427dec9f5e13c6314f74281"
/>
< link
rel="apple-touch-icon"
sizes="72x72"
href="https://gna.org/apple-icon-72x72.png?h=70725943de8884804f9da28202ced0ad6fed483ae9cf8f6d874aa133e30cb693"
/>
< link
rel="apple-touch-icon"
sizes="76x76"
href="https://gna.org/apple-icon-76x76.png?h=1e6e8072df3b21bdcea254a42aac6e993611e845f91ddd79f6f35a6c441710a5"
/>
< link
rel="apple-touch-icon"
sizes="114x114"
href="https://gna.org/apple-icon-114x114.png?h=c20099f8190ed3962fab5726c5594857a871cdb3ee98439343c622cd3727fed6"
/>
< link
rel="apple-touch-icon"
sizes="120x120"
href="https://gna.org/apple-icon-120x120.png?h=4df78e402e60b58c6d44764678bdd737b5b6a836aeb85fb75fa49f706f7e8c81"
/>
< link
rel="apple-touch-icon"
sizes="144x144"
href="https://gna.org/apple-icon-144x144.png?h=0c44e6655d714f89ee95cc151032d1f0dc3204bd24d1ca2ee9d94692d4ede84d"
/>
< link
rel="apple-touch-icon"
sizes="152x152"
href="https://gna.org/apple-icon-152x152.png?h=157918f883ff95d4eeb6452d0ebb61ca5e21ea0dcac1aefe825f3e2f3999052f"
/>
< link
rel="apple-touch-icon"
sizes="180x180"
href="https://gna.org/apple-icon-180x180.png?h=7d5c16d379b7db6d8ea5aae64921d7162b84f543763acd8fc7c107f80a600213"
/>
< link
rel="icon"
type="image/png"
sizes="192x192"
href="https://gna.org/android-icon-192x192.png?h=095e3835b082dba07f606c33fa6f71bcd671a71e987b0ab2e46dcddceef52b9c"
/>
< link
rel="icon"
type="image/png"
sizes="32x32"
href="https://gna.org/favicon-32x32.png?h=1bf54bf111572b1d1639192b5360ee4345f702e563aa71bb66610a95a7290437"
/>
< link
rel="icon"
type="image/png"
sizes="96x96"
href="https://gna.org/favicon-96x96.png?h=5a6ed96c09f5055526e3b236867a1272a26f7ba957d48b267bccd51ef0845fbe"
/>
< link
rel="icon"
type="image/png"
sizes="16x16"
href="https://gna.org/favicon-16x16.png?h=1e5fa59ae78516055f662e40bb2599dc3828a7adb34567e9d8d2cfcaa6b7aa5f"
/>
< link
rel="manifest"
href="https://gna.org/manifest.json?h=27eca3e8297eb7ff340deb3849b210185a459b3845456aa4d0036f6d966b3518"
/>
< meta name = "msapplication-TileColor" content = "#ffffff" / >
< meta
name="msapplication-TileImage"
content="https://gna.org/ms-icon-144x144.png?h=8170ab51b871b84b8f98bd03cf441afdffb2998b7dfffb04abb7ebf5deeb1f94"
/>
< meta name = "theme-color" content = "#ffffff" / >
< / head >
< / head >
< body class = "base" >
< header >
< nav class = "nav__container" >
< input type = "checkbox" class = "nav__toggle" id = "nav__toggle" / >
< div class = "nav__header" >
< a class = "nav__logo-container" href = "/" >
< img src = "https://gna.org/gna-logo-rectangle-48px.png?h=ba9eab043277265f94c51b87d5e14f9ca35789403ecb8afc9bd1e33b13c6a2a5" alt = "Gna!" / >
< / a >
< label class = "nav__hamburger-menu" for = "nav__toggle" >
< span class = "nav__hamburger-inner" > < / span >
< / label >
< / div >
< div class = "nav__spacer--small" > < / div >
< div class = "nav__link-group" >
< div class = "nav__link-container" >
< a class = "nav__link" rel = "noreferrer" href = "/about/" > About< / a >
< / div >
< div class = "nav__link-container" >
< a class = "nav__link" rel = "noreferrer" href = "/blog/" > Blog< / a >
< / div >
< div class = "nav__link-container" >
< a class = "nav__link" rel = "noreferrer" href = "https://matrix.to/#/#gna:matrix.batsense.net" > Chat< / a >
< / div >
< div class = "nav__link-container" >
2023-01-09 09:59:43 +00:00
< a class = "nav__link" rel = "noreferrer" href = "/forgejo-clinic/" > Clinic< / a >
2022-09-06 13:34:25 +00:00
< / div >
< div class = "nav__link-container" >
< a class = "nav__link" rel = "noreferrer" href = "https://forum.gna.org" > Forum< / a >
< / div >
< div class = "nav__link-container" >
< a class = "nav__link" rel = "noreferrer" href = "https://pouet.chapril.org/@gna" > Mastodon< / a >
< / div >
< / div >
< div class = "nav__spacer" > < / div >
< div class = "nav__link-group--small" >
< div class = "nav__link-container" >
< a class = "nav__link" rel = "noreferrer" href = "https://hosteadashboard.gna.org/login/" > Login< / a >
< / div >
< div class = "nav__link-container--action" >
< a class = "nav__link" rel = "noreferrer" href = "https://hosteadashboard.gna.org/register/" > Join< / a >
< / div >
< / div >
< / nav >
< / header >
<!-- See ../sass/main.scss. Required for pushing footer to the very
bottom of the page -->
< div class = "main__content-container" >
< main >
< div class = "page__container" >
< h1 class = "page__group-title" > 1.17 breaking changes episode 1: preserving a custom gitconfig< / h1 >
< p class = "blog__post-meta" >
< a href = "https://dachary.org" class = "post__author" > Loïc Dachary< / a >
· 22
June
,
2022 · < b > 2 min read< / b >
< / p >
< div class = "blog__content" >
< p > Before version 1.17, when Gitea needed to change the < a href = "https://git-scm.com/docs/git-config" > git configuration< / a > , it modified the < code > $HOME/.gitconfig< / code > file. For instance it would < a href = "https://github.com/go-gitea/gitea/blob/release/v1.16/modules/git/git.go#L174-L177" > set core.quotePath to false< / a > :< / p >
< pre data-lang = "ini" style = "background-color:#2b303b;color:#c0c5ce;" class = "language-ini " > < code class = "language-ini" data-lang = "ini" > < span style = "color:#b48ead;" > [core]
< / span > < span > < / span > < span style = "color:#bf616a;" > quotePath < / span > < span > = < / span > < span style = "color:#d08770;" > false
< / span > < / code > < / pre >
< p > When installing Gitea < a href = "https://docs.gitea.io/en-us/install-with-docker/" > from docker< / a > or < a href = "https://docs.gitea.io/en-us/install-with-docker-rootless/" > rootless< / a > or even < a href = "https://docs.gitea.io/en-us/install-from-binary/" > from binary< / a > this < code > $HOME/.gitconfig< / code > file belongs to a user that is < a href = "https://docs.gitea.io/en-us/install-from-binary/#prepare-environment" > dedicated to Gitea< / a > and not used by anyone else.< / p >
< p > However, if an Gitea installation was done differently and < code > $HOME/.gitconfig< / code > has been customized because it is shared by a user or another application, there is a good chance that manual modifications were done such as:< / p >
< pre data-lang = "ini" style = "background-color:#2b303b;color:#c0c5ce;" class = "language-ini " > < code class = "language-ini" data-lang = "ini" > < span style = "color:#b48ead;" > [user]
< / span > < span > < / span > < span style = "color:#bf616a;" > name < / span > < span > = Jane Doe
< / span > < span > < / span > < span style = "color:#bf616a;" > email < / span > < span > = jane< / span > < span style = "color:#b48ead;" > @doe< / span > < span > .com
< / span > < / code > < / pre >
< p > It is also possible that the file was modified manually by the Gitea admin for other reasons. In both there is a < strong > potential for breakage when upgrading to Gitea > = 1.17 because the location of the file changed< / strong > . It must be moved manually to the new location as follows:< / p >
< ul >
< li > Figure out the directory where < code > $HOME/.gitconfig< / code > must be moved by < a href = "https://gna.org/blog/gentle-introduction-to-the-doctor/" > running the doctor< / a > :< / li >
< / ul >
< pre data-lang = "shell" style = "background-color:#2b303b;color:#c0c5ce;" class = "language-shell " > < code class = "language-shell" data-lang = "shell" > < span > $ gitea --work-path /app/gitea -c /data/gitea/conf/app.ini doctor
< / span > < span > [1] Check paths and basic configuration
< / span > < span > - [I] Configuration File Path: " /data/gitea/conf/app.ini"
< / span > < span > - [I] Repository Root Path: " /data/git/repositories"
< / span > < span > - [I] Data Root Path: " /data/gitea"
< / span > < span > - [I] Custom File Root Path: " /data/gitea"
< / span > < span > - [I] Work directory: " /app/gitea"
< / span > < span > - [I] Log Root Path: " /data/gitea/log"
< / span > < span > OK
< / span > < / code > < / pre >
< ul >
< li > Copy the < code > $HOME/.gitconfig< / code > file to the < strong > Repository Root Path< / strong > (which is < code > /data/git/repositories< / code > in the example above).< / li >
< / ul >
< p > The reason why this breaking change was introduced is to workaround < a href = "https://gna.org/blog/unsafe-repository-is-owned-by-someone-else/" > a rare problem< / a > impacting Gitea installations relying on networked volumes.< / p >
< / div >
< br >
< br >
< div class = "blog__post-tag-container" >
< a class = "blog__post-tag" href = "/tags/gna" > #gna< / a >
< a class = "blog__post-tag" href = "/tags/gitea" > #gitea< / a >
< a class = "blog__post-tag" href = "/tags/troubleshoot" > #troubleshoot< / a >
< a class = "blog__post-tag" href = "/tags/problem" > #problem< / a >
< a class = "blog__post-tag" href = "/tags/tutorial" > #tutorial< / a >
< / div >
< / div >
< / main >
< footer >
< div class = "footer__container" >
<!-- <div class="footer__column"> - -->
< p class = "footer__column license__conatiner" >
All text < a
class="license__link"
rel="noreferrer"
href="http://creativecommons.org/licenses/by-sa/4.0/"
target="_blank"
> CC-BY-SA < /a
>
& code
< a
class="license__link"
rel="noreferrer"
href="https://www.gnu.org/licenses/agpl-3.0.en.html"
target="_blank"
> AGPL < /a
>
|
< a
class="license__link"
rel="noreferrer"
href="https://www.eff.org/issues/do-not-track/amp/"
target="_blank"
> No AMP < /a
>
< / p >
<!-- </div> -->
< div class = "footer__column--center" >
< a href = "/blog/atom.xml" target = "_blank" rel = "noopener" title = "RSS" >
< img
src="https://gna.org/icons/rss.svg?h=f6cd584bdbcd2eb4d1b8b84c9cf083ef45f772167c33fdcee754b35ae8ff4c7d"
class="footer__icon"
alt="Email icon"
/>
< / a >
< / div >
< div class = "footer__column" >
< a href = "/about" title = "About" > About< / a >
< a href = "/coc" title = "Code of Conduct" > CoC< / a >
< span class = "footer__column-divider--mobile-only" > |< / span >
< a href = "/legalese" title = "Legalese" > Legalese< / a >
< a href = "/privacy-policy" title = "Privacy Policy" > Privacy< / a >
< span class = "footer__column-divider--mobile-only" > |< / span >
< a
2023-01-09 09:59:43 +00:00
href="https://forgejo.gna.org/Gna"
2022-09-06 13:34:25 +00:00
rel="noreferrer"
target="_blank"
title="Status"
>Source Code< /a
>
< a href = "/tos" title = "Terms of Service" > ToS< / a >
< / div >
< / div >
< / footer >
< / div >
< / body >
< / html >