Knowledge

Repository (version control)

Source đź“ť

460: 76: 66:
The main purpose of a repository is to store a set of files, as well as the history of changes made to those files. Exactly how each version control system handles storing those changes, however, differs greatly. For instance, Subversion in the past relied on a database instance but has since moved
149:
The use of repositories as a place to upload web documents allows version control to be integrated, and additionally allows quick iteration because changes are pushed through the Version Control System instead of having to upload the file through a protocol like
59:. Some of the metadata that a repository contains includes, among other things, a historical record of changes in the repository, a set of commit objects, and a set of references to commit objects, called 91:
is used to keep track of versions of a set of files, usually to allow multiple developers to collaborate on a project. The repository keeps track of the files in the project, which is represented as a
67:
to storing its changes directly on the filesystem. These differences in storage techniques have generally led to diverse uses of version control by different groups, depending on their needs.
106:. A central repository exists on the server. To make changes to it, a developer first works on a branch repository, and proceeds to commit the change to the former. 554: 356: 243: 587: 199: 103: 118:
is a web interface to a version control system. A user can commonly browse repositories and their constituent files on the page itself.
279: 219: 884: 690: 424: 349: 295: 802: 55:, the whole set of information in the repository may be duplicated on every user's system or may be maintained on a single 792: 278:
Ben Collins-Sussman; Brian W. Fitzpatrick; C. Michael Pilato (2011). "Chapter 5: Strategies for Repository Deployment".
755: 593: 535: 342: 891: 877: 623: 174: 391: 843: 797: 646: 630: 99: 481: 459: 405: 48: 264: 239: 126:
While forges are mainly used to perform version control operations, some forges allow users to host
913: 814: 848: 399: 92: 321:"GitHub Pages | Websites for you and your projects, hosted directly from your GitHub repository" 88: 539: 529: 764: 617: 416: 8: 749: 729: 568: 525: 179: 32: 277: 831: 547: 56: 374:
Years, where available, indicate the date of first stable release. Systems with names
75: 697: 669: 499: 44: 611: 194: 115: 838: 365: 127: 20: 826: 581: 142:) to a repository. This is usually done in order to provide documentation or a 35:. Depending on whether the version control system in use is distributed, like 907: 575: 561: 158: 863: 819: 605: 334: 162: 143: 771: 516: 717: 676: 135: 809: 723: 662: 40: 853: 710: 599: 430: 184: 52: 28: 80: 683: 487: 320: 493: 443: 436: 378:
are no longer maintained or have planned end-of-life dates.
131: 703: 189: 151: 139: 36: 281:
Version Control with Subversion: For Subversion 1.7
296:"Different approaches to source control branching" 905: 16:Metadata storage for software revision control 350: 240:"Version control concepts and best practices" 364: 200:Comparison of source-code-hosting facilities 357: 343: 265:"Getting Started - About Version Control" 232: 157:Examples of this kind of service include 74: 906: 130:by uploading its source code (such as 338: 121: 13: 14: 925: 458: 27:is a data structure that stores 246:from the original on 2020-04-27 104:central and branch repositories 313: 288: 271: 257: 212: 175:Sandbox (software development) 1: 205: 83:, an open source code forge. 79:A repository being shown in 7: 168: 100:distributed version control 87:In software engineering, a 70: 10: 930: 872: 785: 739: 654: 645: 509: 474: 467: 456: 415: 390: 383: 372: 109: 366:Version control software 146:for a software project. 594:Software Change Manager 43:, or centralized, like 21:version control systems 89:version control system 84: 31:for a set of files or 102:system is made up of 78: 180:Software repository 33:directory structure 122:Static web hosting 85: 901: 900: 827:Delta compression 781: 780: 641: 640: 631:Visual SourceSafe 484:(1986, 1990 in C) 454: 453: 921: 758:(via Git) (2014) 752:(via Git) (2013) 655:Free/open-source 652: 651: 475:Free/open-source 472: 471: 462: 392:Free/open-source 388: 387: 359: 352: 345: 336: 335: 329: 328: 317: 311: 310: 308: 306: 292: 286: 285: 275: 269: 268: 261: 255: 254: 252: 251: 236: 230: 229: 227: 226: 216: 195:Forge (software) 128:static web pages 929: 928: 924: 923: 922: 920: 919: 918: 914:Version control 904: 903: 902: 897: 868: 839:File comparison 777: 735: 637: 505: 494:QVCS Enterprise 463: 450: 411: 379: 368: 363: 333: 332: 319: 318: 314: 304: 302: 294: 293: 289: 276: 272: 263: 262: 258: 249: 247: 238: 237: 233: 224: 222: 218: 217: 213: 208: 171: 124: 112: 73: 17: 12: 11: 5: 927: 917: 916: 899: 898: 896: 895: 888: 881: 873: 870: 869: 867: 866: 861: 856: 851: 846: 841: 836: 835: 834: 824: 823: 822: 812: 807: 806: 805: 795: 789: 787: 783: 782: 779: 778: 776: 775: 769: 761: 760: 759: 753: 743: 741: 737: 736: 734: 733: 727: 721: 715: 707: 701: 695: 687: 681: 673: 667: 658: 656: 649: 643: 642: 639: 638: 636: 635: 627: 621: 615: 609: 603: 597: 591: 585: 582:Perforce Helix 579: 573: 565: 559: 551: 545: 544: 543: 533: 520: 513: 511: 507: 506: 504: 503: 497: 491: 485: 478: 476: 469: 465: 464: 457: 455: 452: 451: 449: 448: 440: 434: 428: 421: 419: 413: 412: 410: 409: 403: 396: 394: 385: 381: 380: 373: 370: 369: 362: 361: 354: 347: 339: 331: 330: 312: 300:Stack Overflow 287: 270: 256: 242:. 2018-03-03. 231: 210: 209: 207: 204: 203: 202: 197: 192: 187: 182: 177: 170: 167: 123: 120: 111: 108: 72: 69: 15: 9: 6: 4: 3: 2: 926: 915: 912: 911: 909: 894: 893: 889: 887: 886: 882: 880: 879: 875: 874: 871: 865: 862: 860: 857: 855: 852: 850: 847: 845: 842: 840: 837: 833: 830: 829: 828: 825: 821: 818: 817: 816: 813: 811: 808: 804: 801: 800: 799: 796: 794: 791: 790: 788: 784: 773: 770: 767: 766: 762: 757: 754: 751: 748: 747: 746:Azure DevOps 745: 744: 742: 738: 731: 728: 725: 722: 719: 716: 713: 712: 708: 705: 702: 699: 696: 693: 692: 688: 685: 682: 679: 678: 674: 671: 668: 665: 664: 660: 659: 657: 653: 650: 648: 644: 633: 632: 628: 625: 622: 619: 616: 613: 610: 607: 604: 601: 598: 595: 592: 589: 586: 583: 580: 577: 574: 571: 570: 566: 563: 562:Dimensions CM 560: 557: 556: 552: 549: 546: 541: 537: 534: 531: 527: 524: 523: 522:Azure DevOps 521: 518: 515: 514: 512: 508: 501: 498: 495: 492: 489: 486: 483: 480: 479: 477: 473: 470: 468:Client–server 466: 461: 446: 445: 441: 438: 435: 432: 429: 426: 425:The Librarian 423: 422: 420: 418: 414: 407: 404: 401: 398: 397: 395: 393: 389: 386: 382: 377: 371: 367: 360: 355: 353: 348: 346: 341: 340: 337: 326: 322: 316: 301: 297: 291: 283: 282: 274: 266: 260: 245: 241: 235: 221: 215: 211: 201: 198: 196: 193: 191: 188: 186: 183: 181: 178: 176: 173: 172: 166: 164: 160: 155: 153: 147: 145: 141: 137: 133: 129: 119: 117: 107: 105: 101: 96: 94: 90: 82: 77: 68: 64: 62: 58: 54: 50: 46: 42: 38: 34: 30: 26: 22: 890: 883: 876: 858: 763: 709: 689: 675: 661: 629: 618:Team Concert 606:Surround SCM 567: 553: 442: 375: 324: 315: 303:. Retrieved 299: 290: 280: 273: 259: 248:. Retrieved 234: 223:. Retrieved 214: 163:GitLab Pages 159:GitHub Pages 156: 148: 144:landing page 125: 113: 97: 86: 65: 60: 24: 18: 832:Interleaved 772:Plastic SCM 740:Proprietary 647:Distributed 517:AccuRev SCM 510:Proprietary 417:Proprietary 305:15 November 284:. O'Reilly. 885:Comparison 859:Repository 718:GNU Bazaar 677:Code Co-op 500:Subversion 384:Local only 376:in italics 267:. Git SCM. 250:2020-07-10 225:2012-04-20 206:References 138:, but not 136:JavaScript 116:code forge 45:Subversion 25:repository 810:Changeset 724:Mercurial 663:BitKeeper 576:Integrity 548:ClearCase 220:"SVNBook" 41:Mercurial 908:Category 878:Category 854:Monorepo 793:Baseline 786:Concepts 765:TeamWare 756:Services 730:Monotone 711:GNU arch 600:StarTeam 590:(1980s?) 542:) (2014) 536:Services 532:) (2005) 431:Panvalet 244:Archived 185:Codebase 169:See also 71:Overview 53:Perforce 29:metadata 612:Synergy 596:(1970s) 564:(1980s) 433:(1970s) 815:Commit 798:Branch 774:(2006) 768:(1992) 750:Server 732:(2003) 726:(2005) 720:(2005) 714:(2001) 706:(2005) 700:(2007) 698:Fossil 694:(2002) 686:(2002) 680:(1997) 672:(2017) 670:Breezy 666:(2000) 634:(1994) 626:(2003) 620:(2008) 614:(1990) 608:(2002) 602:(1995) 584:(1995) 578:(2001) 572:(1984) 558:(1994) 550:(1992) 526:Server 519:(2002) 502:(2000) 496:(1998) 490:(1998) 447:(1991) 439:(1985) 427:(1969) 408:(1973) 402:(1982) 325:GitHub 110:Forges 81:GitLab 57:server 849:Merge 820:Gated 803:Trunk 684:Darcs 624:Vault 538:(via 528:(via 488:CVSNT 93:graph 61:heads 51:, or 892:List 844:Fork 691:DCVS 588:SCLM 569:DSEE 555:CMVC 540:TFVC 530:TFVC 444:QVCS 437:PVCS 406:SCCS 307:2014 161:and 134:and 132:HTML 23:, a 864:Tag 704:Git 482:CVS 400:RCS 190:Git 152:FTP 140:PHP 49:CVS 39:or 37:Git 19:In 910:: 323:. 298:. 165:. 154:. 114:A 98:A 95:. 63:. 47:, 358:e 351:t 344:v 327:. 309:. 253:. 228:.

Index

version control systems
metadata
directory structure
Git
Mercurial
Subversion
CVS
Perforce
server

GitLab
version control system
graph
distributed version control
central and branch repositories
code forge
static web pages
HTML
JavaScript
PHP
landing page
FTP
GitHub Pages
GitLab Pages
Sandbox (software development)
Software repository
Codebase
Git
Forge (software)
Comparison of source-code-hosting facilities

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑