Git版本控制系统

一:基础使用命令大全:

命令大全:https://git-scm.com/docs

1:初始化:git-init - 创建一个空的 Git 仓库或重新初始化已有的

bash 复制代码
git init [-q | --quiet] [--bare] [--template=<template-directory>]
	 [--separate-git-dir <git-dir>] [--object-format=<format>]
	 [--ref-format=<format>]
	 [-b <branch-name> | --initial-branch=<branch-name>]
	 [--shared[=<permissions>]] [<directory>]



简单实例:
初始化当前目录为 Git 仓库:
git init 
新建一个叫 my-project 的文件夹并初始化:
git init my-project
初始化并指定初始分支为 main:
git init -b main

这一段内容都是可以选择的参数:

  • [-q | --quiet]:安静模式,不输出日志(一般不用)
  • [--bare]:创建裸仓库(一般给服务器用,本地开发不用)
  • [-b <branch-name>]:指定初始分支名(比如 git init -b main)
  • 只有 <directory> 是可选的目标路径,比如 git init my-project 会新建 my-project 文件夹并初始化。

并非最开始创建的时候需要都加入进去。

git init 高级参数

这些参数是给特殊场景 / 服务器 / 高级用户准备的,本地工程初始化 99% 用不上:

  1. --ref-format=<format>

    • 作用:指定 Git 内部引用的存储格式
    • 默认:files(松散文件,稳定可靠)
    • 实验性:reftable(性能更好,但还在测试,结构可能变)
    • 核心思路:Git 想优化内部存储性能,但为了稳定,默认还是用老方案,普通开发者完全不用改。
  2. --template=<template-directory>

    • 作用:指定初始化时用的模板目录(比如预设钩子、配置)
    • 核心思路 :给团队 / 公司做标准化仓库用的,比如统一预设 .gitignore、钩子脚本,普通开发者直接用默认模板就行。
  3. --separate-git-dir=<git-dir>

    • 作用:把 .git 目录单独放到别的路径,当前目录只留一个指向它的文本文件
    • 核心思路:适合把仓库数据和代码目录分开(比如存到移动硬盘 / 云盘),但日常开发没必要折腾,会增加复杂度。
  4. --shared[=<permissions>]

    • 作用:设置多用户共享仓库的权限(比如组内可写、所有人可读)
    • 取值:group/all/umask 等
    • 核心思路:给服务器上的共享仓库用的(比如团队内部 Git 服务器),本地个人仓库完全不需要,默认权限就够。

&&1.GitLab里面实现了版本兼容,不需要手动执行的 SHA-1 → SHA-256 转换命令

相关推荐
Tairitsu_H5 小时前
[版本控制器Git] Git 远程仓库 | 多人协作 | 企业级 Git Flow 开发模型
git·版本控制器·远程仓库
我先去打把游戏先5 小时前
Git-Rebase使用指南-从原理到实战
服务器·git·嵌入式硬件·物联网·ubuntu
kaixin_learn_qt_ing8 小时前
我有两个程序,它们在不同的项目中,但是它们复用了一部分头文件,它们在两个不同的git仓库中,有什么好的办法可以让它们复用吗?
git
greatofdream9 小时前
git rebase时如何解决merge节点冲突问题
大数据·git·elasticsearch
敲敲敲-敲代码1 天前
git安装记录
git
我是人✓1 天前
Git入门:从零开始掌握分布式版本控制
分布式·git
Aurora_eye1 天前
Git 笔记
笔记·git
解道Jdon1 天前
FigCraft把Figma用Rust从零重写了一遍
ide·windows·git·svn·eclipse·github·visual studio
橙橙笔记1 天前
QT安卓软件的制作
android·git·qt·软件
我是人✓1 天前
Git远程协作与标签管理全攻略
git