【编程向导】代码管理-git一期讲解

添加 git add

Add file contents to the index

将文件内容添加到索引

git add 命令将文件内容添加到索引库(将修改记录添加到暂存区)。也就是将要提交的文件的信息添加到索引库中。

添加修改记录至暂存区

bash 复制代码
# 文件
git add <file1> <file2> <file3> ...

# 目录
git add <dir>

# 所有目录文件(包括修过过的文件、新建的文件,但不包括删除的文件)
git add .

📍 示例:

bash 复制代码
# 提交单个文件
git add index.html

# 提交 markdown 文件
git add *.md

分次添加修改至暂存区

添加每个变化前,都会要求确认。对于同一个文件的多处变化,可以实现分次提交。

-p 参数相当于 --patch,表示多次提交。

bash 复制代码
git add -p
git add --patch

📍 示例:

bash 复制代码
# 将以Controller结尾的文件的所有修改添加到暂存区
git add *Controller

# 将所有以Hello开头的文件的修改添加到暂存区 例如:HelloWorld.txt,Hello.java,HelloGit.txt ...
git add Hello*

# 将以Hello开头后面只有一位的文件的修改提交到暂存区 例如:Hello1.txt,HelloA.java 如果是HelloGit.txt或者Hello.java是不会被添加的git add [file1] [file2] ...
git add Hello?

添加跟踪修改至暂存区

标记本地有改动(包括删除和修改,但不包括新建 )的已经追踪的文件,并添加至暂存库。

-u--update 表示更新索引,使其具有与 <pathspec> 匹配的条目。

省略 <path> 表示 . ,即当前目录。

bash 复制代码
git add -u [<pathspec>]
git add --update [<pathspec>]

添加修改到暂存区

标记本地所有改动的文件(包括删除、修改和新建),并添加至暂存库。

-A--all--no-ignore-removal 表示更新索引,不仅在工作树具有匹配 <pathspec> 的文件的位置,而且索引已经有条目的位置。

bash 复制代码
git add -A
git add --all
git add --no-ignore-removal

git add -A 相当于同时执行 git add .git add -u

分支 git branch

List, create, or delete branches

列出, 创建, 或者删除分支

查看分支

查看本地分支

bash 复制代码
# 查看本地所有分支
git branch

查看远程分支

bash 复制代码
# 查看远程所有分支 -r 相当于 --remote
git branch -r

# 查看本地分和远程所有分支 -a 相当于 all
git branch -a

# 查看本地分支关联远程分支的情况(可以看到本地与远程的差距)
git branch -v

更新远程分支列表:

bash 复制代码
git remote update origin --prune

新建分支

新建一个分支,但依然停留在当前分支

bash 复制代码
# 基于当前分支末梢新建分支但并不切换分支
git branch <branchname>

# 基于当前分支末梢新建分支并切换至该分支
git checkout -b <branchname>

# 基于某次提交、分支或标签创建新分支
git branch <branchname> <commit-id>

# 新建一个分支,与指定的远程分支建立追踪关系
git branch --track <branch-name> <remote-branch>

关联远程分支

关联之后,git branch -vv 就可以展示关联的远程分支名了,同时推送到远程仓库。

bash 复制代码
git branch -u <branch-name>

或者在 git push 时加上参数 -u 参数。

bash 复制代码
git push -u origin/<branch-name>
git push --set-upstream origin/<branch-name>

切换分支

切换到指定分支。<branch-name> 为切换到的目标分支。

bash 复制代码
git checkout <branch-name>

修改分支

修改指定分支名称。<branch-name> 为指定分支新名称。-m--move 表示移动或重命名和相应的引用日志。

bash 复制代码
# 修改指定分支名称
git branch -m <old_name> <new_name>

删除分支

删除本地分支

bash 复制代码
git branch -d <local-branch-name>

删除远程分支

bash 复制代码
# 语法
git push origin --delete <branch-name>

git branch -dr [remote/branch]

# 示例:删除远程分支 feature/test
git push origin --delete feature/test

git branch -dr origin/branchA

# 删除后推送至远程仓库
git push origin:<branchname>
相关推荐
牛马程序员‍7 分钟前
Day99 Gitub、系统分层架构
git·架构·mvc·ddd架构·gitub
牛马程序员‍1 小时前
云岚到家项目100问 v1.0
大数据·apache
撸码到无法自拔2 小时前
MATLAB中处理大数据的技巧与方法
大数据·开发语言·matlab
三月七(爱看动漫的程序员)3 小时前
Genetic Prompt Search via Exploiting Language Model Probabilities
大数据·人工智能·算法·语言模型·自然语言处理·prompt
forestsea4 小时前
【Elasticsearch】聚合分析:管道聚合
大数据·elasticsearch·搜索引擎
risc1234564 小时前
【Elasticsearch】脚本查询需要字段时使用的docValues结构吗?
elasticsearch
铭毅天下4 小时前
Elasticsearch 性能测试工具 Loadgen 之 001——部署及应用详解
大数据·测试工具·elasticsearch·搜索引擎·全文检索
喝醉酒的小白5 小时前
批量创建ES索引
大数据·elasticsearch·jenkins
一ge科研小菜鸡5 小时前
大数据治理实战指南:数据质量、合规与治理架构
大数据
金融OG8 小时前
99.16 金融难点通俗解释:营业总收入
大数据·数据库·python·机器学习·金融