Git的功能
Git是版本控制工具。版本控制就是记录你对文件做的所有改动的一个系统,包括改动的内容,改动的时间,改动的备注等,便于你恢复特定的版本。
版本控制系统分为本地版本控制系统,中心版本控制系统和分布式版本控制系统。Git就是分布式版本控制系统。
Git常见命令
# 设置需要进行版本控制的文件夹
cd target_path
#进行初始化
git init
# 设置git版本控制时提交的信息
# 就是提交给服务器的时候让服务器知道是那台电脑提交的,不需要跟服务器的帐号一致
git config [--system/global/local] user.name "***"
git config [--system/global/local] user.email "***"
#比如:
#git config --global user.name "windows_build_time_20231007"
#git config --global user.email "abcdefg@gmail.com"
#/etc/gitconfig:包含了适用于系统所有用户和所有项目的值。注是git的安装目录(Win:D:\Git\mingw64\etc\gitconfig) --system 系统级
#~/.gitconfig:只适用于当前登录用户的配置。(Win:C:\Users\Administrator.gitconfig) --global 全局
#位于git项目目录中的.git/config:适用于特定git项目的配置。–local当前项目
#查看当前仓库配置信息
git config [--local|--global|--system] --list
# 删除配置项
git config [--local|--global|--system] --unset section.key
# 启用存储用户名和密码功能
git config [--local|--global|--system] credential.helper store
# 添加一个新的远程仓库。指定一个远程仓库的名称和 URL,将其添加到当前仓库中。
# remote_name是你想起的名字,然后push的时候用git push remote_name就可以推到这个remote 仓库里面
git remote add <remote_name> <remote_url>
# 将本地代码暂存
git add .
# 将暂存后的代码提交到本地仓库
git commit -m message
# 将本地的 master 分支推送到remote_name主机的 test 分支。
git push remote_name test:master
# 将远程主机remote_name 的 master 分支拉取过来,与本地的 brantest 分支合并。
git pull remote_name master:brantest
# 创建分支
git branch “***”
#切换分支
git switch ”***“
#合并log_id变更到branch_name分支
git checkout branch_name
git merge log_id
参考:
Git config
命令详解:
stu@stu-action:~$ git config -h
用法:git config [<选项>]
配置文件位置
--global 使用全局配置文件
--system 使用系统级配置文件
--local 使用仓库级配置文件
--worktree 使用工作区级别的配置文件
-f, --file <文件> 使用指定的配置文件
--blob <数据对象 ID> 从给定的数据对象读取配置
操作
--get 获取值:名称 [值模式]
--get-all 获得所有的值:键 [值模式]
--get-regexp 根据正则表达式获得值:名称正则 [值模式]
--get-urlmatch 获得 URL 取值:section[.var] URL
--replace-all 替换所有匹配的变量:名称 值 [值模式]
--add 添加一个新的变量:名称 值
--unset 删除一个变量:名称 [值模式]
--unset-all 删除所有匹配项:名称 [值模式]
--rename-section 重命名小节:old-name new-name
--remove-section 删除一个小节:name
-l, --list 列出所有
--fixed-value 在比较值与 '值模式' 时,使用字符串字面比较
-e, --edit 打开一个编辑器
--get-color 获得配置的颜色:配置 [默认]
--get-colorbool 获得颜色设置:配置 [stdout-is-tty]
类型
-t, --type <> 取值为该类型
--bool 值是 "true" 或 "false"
--int 值是十进制数
--bool-or-int 值是 --bool 或 --int
--bool-or-str 值是 --bool 或字符串
--path 值是一个路径(文件或目录名)
--expiry-date 值是一个到期日期
其它
-z, --null 终止值是 NUL 字节
--name-only 只显示变量名
--includes 查询时参照 include 指令递归查找
--show-origin 显示配置的来源(文件、标准输入、数据对象,或命令行)
--show-scope 显示配置的作用域(工作区、本地、全局、系统、命令)
--default <取值> 使用 --get 参数,当缺少设置时使用默认值
Git
命令详解:
stu@stu-action:~$ git --help
用法:git [--version] [--help] [-C <路径>] [-c <名称>=<取值>]
[--exec-path[=<路径>]] [--html-path] [--man-path] [--info-path]
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
[--git-dir=<路径>] [--work-tree=<路径>] [--namespace=<名称>]
[--super-prefix=<路径>] [--config-env=<名称>=<环境变量>]
<命令> [<参数>]
这些是各种场合常见的 Git 命令:
开始一个工作区(参见:git help tutorial)
clone 克隆仓库到一个新目录
init 创建一个空的 Git 仓库或重新初始化一个已存在的仓库
在当前变更上工作(参见:git help everyday)
add 添加文件内容至索引
mv 移动或重命名一个文件、目录或符号链接
restore 恢复工作区文件
rm 从工作区和索引中删除文件
检查历史和状态(参见:git help revisions)
bisect 通过二分查找定位引入 bug 的提交
diff 显示提交之间、提交和工作区之间等的差异
grep 输出和模式匹配的行
log 显示提交日志
show 显示各种类型的对象
status 显示工作区状态
扩展、标记和调校您的历史记录
branch 列出、创建或删除分支
commit 记录变更到仓库
merge 合并两个或更多开发历史
rebase 在另一个分支上重新应用提交
reset 重置当前 HEAD 到指定状态
switch 切换分支
tag 创建、列出、删除或校验一个 GPG 签名的标签对象
协同(参见:git help workflows)
fetch 从另外一个仓库下载对象和引用
pull 获取并整合另外的仓库或一个本地分支
push 更新远程引用和相关的对象
命令 'git help -a' 和 'git help -g' 显示可用的子命令和一些概念帮助。
查看 'git help <命令>' 或 'git help <概念>' 以获取给定子命令或概念的
帮助。
有关系统的概述,查看 'git help git'。