一、拉取
在 Git 中,拉取操作通常是指使用 git pull
命令来从远程仓库获取最新的提交并合并到当前分支。以下是一些常用的 git pull
相关命令及其用法:
1.基本的拉取命令:
git pull <remote_name> <branch_name>
<remote_name>
默认是origin
,表示远程仓库。<branch_name>
是你想要拉取的远程分支的名称。
示例:
git pull origin main
这个命令会从远程的 main
分支拉取最新的提交并合并到当前分支。
2.拉取到特定分支:
如果你不在想要更新的分支上,你可以指定分支名称:
git pull <remote_name> <branch_name>:<local_branch_name>
这会将远程分支上的更改拉取到本地分支。
示例:
git pull origin main:my-local-branch
这个命令会将远程的 main
分支上的更改拉取到 my-local-branch
。
3.拉取最新的提交并自动合并:
git pull
如果你没有指定分支,默认情况下,git pull
会拉取并合并远程仓库的 origin
上与当前分支对应的分支。
4.拉取特定标签:
git pull --tags
这个命令会拉取远程仓库上的所有标签。
5.拉取并重新设置基础分支:
git pull --rebase
这个命令会拉取远程分支的更改并执行变基操作,而不是创建一个新的合并提交。
6.拉取特定提交:
git pull <remote_name> <commit_hash>
这个命令会拉取远程仓库的特定提交。
示例:
git pull origin 123abc
这个命令会拉取远程仓库中哈希值为 123abc
的特定提交。
7.注意:
- 在执行
git pull
之前,确保你的工作目录是干净的,或者已经提交了所有的更改。 - 如果远程分支和本地分支有冲突,Git 会停止合并并让你解决冲突。
- 使用
--rebase
选项可以保持一个更线性的项目历史记录,但要注意不要对已经推送到远程仓库的提交执行变基操作。
拉取操作是 Git 分布式版本控制的核心功能之一,它允许你与其他开发者的工作保持同步。
二、储藏
在 Git 中,git stash
是一个非常有用的命令,它允许你临时保存你的工作进度,然后回到一个干净的工作状态。这个命令在多种情况下都很有用,比如当你需要切换到另一个分支但不想提交当前不完整的更改时,或者当你需要重置你的工作目录时。
以下是 git stash
的一些基本用法:
1. 保存当前的工作进度:
git stash save "你的信息"
这里的 "你的信息"
是一个可选的参数,用于给你的 stash 条目一个描述性的名称,这在你有多个 stash 时会很有帮助。
2. 列出所有的 stash:
git stash list
这个命令会列出所有的 stash 条目。
3. 应用最近的 stash 到当前工作目录:
git stash apply
如果你想应用特定的 stash,可以使用:
git stash apply stash@{n}
这里的 n
是 stash 列表中的索引号。
4. 删除最近的 stash:
git stash drop
同样,如果你想删除特定的 stash,可以使用:
git stash drop stash@{n}
5. 应用最近的 stash 并从 stash 列表中移除它:
git stash pop
使用 pop
命令时,它会自动从 stash 列表中删除应用的 stash。
6. 清除所有的 stash:
git stash clear
这个命令会移除所有的 stash 条目。
7.注意:
- 使用
git stash
之前,确保你的工作目录是干净的,否则 stash 可能会包含一些未跟踪的文件。 - 如果你尝试应用一个 stash,但当前的工作目录与 stash 时的状态冲突,Git 会阻止你应用 stash 以避免潜在的合并问题。
- stash 会保存你的修改、暂存区的更改,以及当前的工作进度,但不包括未跟踪的文件和子模块的更改。
git stash
是一个强大的工具,可以帮助你更好地管理你的工作进度和分支,使工作流程更加清晰和有组织。