I noticed a default option in git core.repositoryFormatVersion which defaults to 0, but what are "repository format versions" and what functional difference do they make?
what are the different repository format versions (for the core.repositoryFormatVersion setting) in git?
15k views Asked by Alexander Bird At
2
There are 2 answers
1
hobbs
On
It's for future compatibility -- if the git developers ever find it necessary to change the way that repos are stored on disk to enable some new feature, then they can make upgraded repos have a core.repositoryformatversion of 1. Then newer versions of git that know about that new format will trigger the code to deal with it, and older versions of git that don't will gracefully error with "Expected git repo version <= 0, found 1. Please upgrade Git".
As of now, the only repo format version defined or recognized is 0, which denotes the format that every public release of git has used.
Related Questions in GIT
- problem to push files on a repository git
- diff3 output in git conflict style, including mergeable hunks
- Git Not In Sync with Local Branch
- Setting up the version control of .dotfiles while the .config is connected to a forked repo
- How to fix overriding the main branch in Git?
- I can't add text to "Message" in VS Code when committing to Git
- How can i redirect pull request from main branch to another branch
- Xcode commits (possibly outside of any branch) disappeared, how to get them back?
- Git/TortoiseGit : how to apply ONLY the changes from ONE commit from branch A, to branch B?
- How can I reintroduce username an password on git using fedora?
- GIT SKIP EMPTY DIRECTORIES
- Git smudge run once per checkout or per commit?
- I can't find ~/.profile or ~/.bashrc in C:/Users/<user>/.ssh folder
- Set environment variable during push for GitHub Actions
- Android WebRTC compile
Related Questions in VERSION-CONTROL
- Setting up the version control of .dotfiles while the .config is connected to a forked repo
- How can i redirect pull request from main branch to another branch
- Visual Studio 2022 convert spaces to tabs on checkout and back to spaces on checkin
- Handle workspace/monorepo with different deployments
- P4 change ownership through command line
- gitignore for Unity VR project does not work
- Different SDK for specific build
- Sourcetree GUI : Why main branch is behind another branch? Is it normal?
- Strongly Connected Components Using Kosaraju Algorithm
- How to use git-credential-gopass with git send-email?
- Run Robot in Jenkinsfile does not fetch the correct test.robot file from Github
- Git Hub not showing my Organization's Repositories in Android Studio
- Sourcetree caches old branches that no longer exist on github. I do not want this
- How to retrieve Inference image location for my Sagemaker pytorch custom model for Model registry
- I have an error with my Material UI react-swipeable-views in TypeScript
Related Questions in CONFIGURATION
- Ubuntu wsl2 in windows, my /etc/fonts/fonts.conf keeps reloading
- I am trying to run java application in Eclipse, When I try to do Run > Run as > Java Application it starts to show little processing but nothing happe
- CISCO refuses to turn off spanning tree for specific vlans
- Resolve paths dynamically based on directory where test (or tested files) is located in Jest
- `android` Does Not Exist in `~/Android/Sdk/platform-tools`
- jboss configuration via ipv6 version jboss-eap-7.4
- I can't find a conenction diagarm for the OV7670 camera to the ESP8266
- Locally testing OS environmental variables in Ballerina
- Why is the build configuration always choosing production?
- App Configuration affecting VS Web Server Hosting
- IServiceCollectionConfigurator' does not contain a definition for 'UsingRabbitMq'
- Localhost Not Working After Creating Virtual Host in XAMPP
- Why am i unable to download MySql?
- Azure App Configuration - Replica for 429 HTTP responses
- TYPO3: tx-form custom fluid templates and class for submit button
Related Questions in REPOSITORY
- Cant connect to any github repository from my netbeans 20
- Save Interface in DB golang
- Files lost from Github repository
- Single Github repository for two local repos for a fullstack project
- Git Webhook to trigger SageMaker Pipeline
- Need more parameters in subclass overridden method
- Build code in new cpp file in a cloned repository
- Troubleshooting Azure DevOps External Repository Cloning Authentication Issue
- How to have helm / helmfile install the most recent chart version from a repo?
- Can't able to merge branch to main branch in github
- I was a contributor on a Github repository that does not exist anymore. I still have those files on my computer. How do I upload the files to Github?
- Spring can't find the specified Bean
- Create SFDX project vs code from repository?
- Magnolia Git Repo Documentation Access
- Conditionnal repositories in Golang
Related Questions in RCS
- Linux RCS when username contains the "@" character
- how check for the functional form of continuous covariates competing risks model using Restricted cubic splines in R
- How do I use dumpbin to look for RCS keywords on a DLL file?
- strange `$Id` value added in linux source files
- Single-file history format/library for binary files?
- Yacc generated C file sccsid warning supression
- Locating or compiling latest GNU RCS (5.10) on Windows 10
- Executable merge.exe (extracted from MSYS2) doesn't run on Windows
- Using RCS for revision control of a python based project
- How does one create a wrapper around a program?
- Why the patches can re-create any file at any point?
- merge with rcsmerge - how
- rcs -u motd breaking a lock
- Is there a way in RCS or SCCS, etc to 're-origin' the changes?
- cph with rcs nact$nmiss error?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
git 2.7 (Nov. 2015) adds a lot more information in the new
Documentation/technical/repository-version.txt.See commit 067fbd4, commit 00a09d5 (23 Jun 2015) by Jeff King (
peff).(Merged by Junio C Hamano --
gitster-- in commit fa46579, 26 Oct 2015)You now can define "extensions", and use
core.repositoryformatversionas a "marker" to signal the existence of said extensions, instead of having to bump the Git version number itself:Extracts from the doc:
Now that is really an original approach to all the release version number policy and its semver policy.
As a first extension, you will have with git 2.7
preciousObjects:The doc mentions:
That is:
Note that this
core.repositoryformatversionbusiness is old. Really old. commit ab9cb76, Nov. 2005, Git 0.99.9l.It was done initially for the db version:
Git 2.22 (Q2 2019) will avoid leaks around the
repository_formatstructure.See commit e8805af (28 Feb 2019), and commit 1301997 (22 Jan 2019) by Martin Ågren (``).
(Merged by Junio C Hamano --
gitster-- in commit 6b5688b, 20 Mar 2019)With Git 2.28 (Q3 2020), the runtime itself can upgrade the repository format version automatically, for example on an unshallow fetch.
See commit 14c7fa2, commit 98564d8, commit 01bbbbd, commit 16af5f1 (05 Jun 2020) by Xin Li (
livid).(Merged by Junio C Hamano --
gitster-- in commit 1033b98, 29 Jun 2020)Warning: In 2.28-rc0, we corrected a bug that some repository extensions are honored by mistake even in a version 0 repositories (these configuration variables in
extensions.*namespace were supposed to have special meaning in repositories whose version numbers are 1 or higher), but this was a bit too big a change.See commit 62f2eca, commit 1166419 (15 Jul 2020) by Jonathan Nieder (
artagnon).(Merged by Junio C Hamano --
gitster-- in commit d13b7f2, 16 Jul 2020)