【编程向导】代码管理-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>
相关推荐
武子康9 小时前
大数据-98 Spark 从 DStream 到 Structured Streaming:Spark 实时计算的演进
大数据·后端·spark
阿里云大数据AI技术9 小时前
2025云栖大会·大数据AI参会攻略请查收!
大数据·人工智能
naice10 小时前
我对github的图片很不爽了,于是用AI写了一个图片预览插件
前端·javascript·git
代码匠心11 小时前
从零开始学Flink:数据源
java·大数据·后端·flink
Lx35214 小时前
复杂MapReduce作业设计:多阶段处理的最佳实践
大数据·hadoop
会飞的青蛙16 小时前
GIT 配置别名&脚本自动化执行
前端·git
MacroZheng16 小时前
横空出世!MyBatis-Plus 同款 ES ORM 框架,用起来够优雅!
java·后端·elasticsearch
武子康16 小时前
大数据-100 Spark DStream 转换操作全面总结:map、reduceByKey 到 transform 的实战案例
大数据·后端·spark
expect7g17 小时前
Flink KeySelector
大数据·后端·flink
阿里云大数据AI技术1 天前
StarRocks 助力数禾科技构建实时数仓:从数据孤岛到智能决策
大数据