内容导读
本文介绍了工作中常用的Git命令(持续更新中...)。
git log
查看某一文件的历史修改记录
git log --oneline <file_path>
git clone
只克隆指定的分支
git clone --branch <branch name> [remote repository address]
指定深度克隆
# 如果仓库太大,可以指定克隆深度(depth),比如depth为1表示只克隆最近一次commit.
git clone <repository url> --depth 1
git branch
查看所有本地分支
git branch --list
查看所有分支(包括本地分支和远程分支):
git branch --all
基于历史提交创建并检出新分支
git checkout -b <new_branch_name> <history_commit_id>
删除远程分支
语法:git push origin --delete <branch_name>
示例:git push origin --delete haoxueren
git checkout
拉取指定的远程分支到本地:
语法:git checkout -b <本地分支名> origin/<远程分支名>
举例:git checkout -b dev origin/dev
拉取远程的origin/dev
分支到本地,并在本地命名为dev
分支,然后切换到本地的dev分支。
git fetch
将远程分支的更新获取到本地
语法:git fetch <远程主机名> <分支名> # 注意之间有空格
示例:git fetch origin master
取回更新后,会返回一个FETCH_HEAD
,指的是某个branch
在服务器上的最新状态,我们可以在本地通过它查看刚取回的更新信息:
$ git log -p FETCH_HEAD
git pull
将远程主机的某个分支的更新取回,并与本地指定的分支合并,完整格式可表示为:
语法:git pull <远程主机名> <远程分支名>:<本地分支名>
示例:git pull origin master : master
如果远程分支是与当前分支合并,则冒号后面的部分可以省略:
语法:git pull <远程主机名> <远程分支名>
示例:git pull origin master
git merge
合并分支
# 将分支1合并到分支2中
语法:git merge <分支1> <分支2>
# 将develop合并到master分支中
示例:git merge develop master
合并完成后,分支1保持不变,分支2是两个分支合并后的内容。
# 将其它分支合并到当前分支(当前分支可省略不写)
语法:git merge <其它分支> <当前分支>
# 将develop分支合并到当前分支
示例:git merge develop
git config
配置用户信息
要为当前仓库配置指定的用户名和联系方式,只需要打开当前仓库的.git/config
文件,添加以下代码即可。
[user]
name = <display name>
email = <your email>
git reset
回退到指定版本
# 返回到某个节点,不保留当前修改
git reset --hard <commit-id>
# 返回到某个节点,并保留当前修改
git reset --soft <commit-id>
版本号(commit-id)没必要写全,前几位就可以了,Git会自动去查找。
网友评论