Git 用法总结

常见命令用法总结

# 显示当前路径
$  pwd 
 
# 显示command的help
$  git help 
 
# 显示一个远程仓库的路径(需要先进入到该仓库的目录中)
$  git remote -v
 
 
# 初始化新建的文件夹,使其能够被Git进行管理。该目录下会多一个.git目录,这个目录是Git来
# 跟踪管理版本的,以便回滚到之前的版本。要使用Git进行版本管理,必须先初始化仓库。Git是
# 使用git init命令进行初始化的
$  git init
 
# 查看仓库的状态,是最常用的命令。
$  git status
 
# 要想让文件成为Git仓库的管理对象,就要将其加入到暂存区中。暂存区是提交之前的一个临时区域。
$  git add <filename> 
 
# 保存仓库的历史记录,将当前暂存区中的文件实际保存到仓库的历史记录中。通过这些记录,
# 我们就可以在工作树中复原文件。
$  git commit -m "The information of commit for this commit"
# 若要是有很多信息要说明,则不要在后面加 -m 的参数,直接 git commit 后,会提示输入内容。
 
 
# 查看提交日志
$  git log
 
# 只显示提交信息的第一行
$  git log --pretty=short
 
# 只显示指定目录、文件的日志
$  git log <filename>
 
# 显示文件的改动信息
$  git log -p 
 
 
# 显示暂存区、工作树与最新提交的区别。
$  git diff 
 
# 执行git add 命令后,由于工作树和暂存区的状态并无差别,结果什么都不会显示。此时查看暂存区与最新
# 提交的区别用如下命令(HEAD为指向当前分支中最新一次提交的指针):
$  git diff HEAD
 
# 查看最近两次提交的区别,以当前状态为最新状态:
$  git diff HEAD~2     #后面的2为最近的两次,数字可以自行按需设定。  
 
# 首先进入到该仓库中,将分支名列表显示,同时当前所在分支左边有星号* 标记,以示区别。
$  git branch
 
# 查看当前分支的相关信息,-a 参数可以同时显示本地仓库和远程仓库的分支信息。
# 在显示的结果中,开头加了 remotes/origin/ 的是GitHub 端仓库的分支;
# 没有加 remotes/origin/ 的是本地仓库的分支。开头有 * 的为当前所在分支。
$  git branch -a
 
# 创建并切换分支的命令为: git checkout -b 。创建名为Feature-A 的分支,并转到该分支:
$  git checkout -b Feature-A
 
# 创建某一分支的特性分支,在Feature-C 分支上创建特性分支 Feature-B
$  git checkout -b Feature-B  Feature-C 
 
# 创建分支,只是创建,而不切换到该分支:
$  git branch f01
 
# 切换到某一分支的命令为:
$  git checkout f01
 
# 切换回上一个分支:
$  git checkout -
 
 
# 删除本地分支 F02
$  git branch -d F02
 
# 强制删除本地分支 F02
$  git branch -D F02
 
 
# 删除远程(GitHub)上的分支。
$  git push origin :<branch_name>
# 或
$  git push <remote_name> --delete <branch_name>
# 如删除远程origin上的分支 f01
$  git push origin:f01
# 或
$  git push origin --delete f01
 
 
# 合并分支:将Feature-A 合并到主干分支上
$  git checkout master               #首先回到主分支
$  git merge --no-ff Feature-A  
     
# 以图表形式查看分支合并的情况,其显示的结果中包含每个状态点的哈希值,将会在下面的回溯中使用
$  git log --graph 
 
 
# 回溯到历史版本的命令:git reset。如回溯到Feature-A 分支创建之前,创建一个名为Fix-B 的特性分支
# 要让仓库的HEAD、暂存区、当前工作树回溯到指定状态,需要用指定状态点的哈希值来进行,如下最后的参数
# 为回溯到该状态的哈希值:
$  git reset --hard  227a7a38bd53cbaff4ef49cb56643c1aa991b84f
$  git checkout -b Fix-B     #对Fix-B分支中的内容进行修改,然后提交。
 
# 将主分支推进到之前合并了Feature-A分支之后的状态。首先在日志中找出回溯历史之前的哈希值。
$  git reflog
$  git checkout master 
$  git reset --hard  hash_num   # hash_num为对应状态的哈希值,便可回到指定点的状态。
 
# 现在将分支Fix-B合并到主分支上,命令如下:
$  git merge --no-ff Fix-B  
 
# 若提示冲突则要手动解决冲突,冲突解决之后还需要执行如下提交操作:
$  git add <file_name>     #添加刚刚手动解决的文件
$  git commit -m  "conflict have been resolve"
 
# 修改提交信息,执行如下命令后,编辑器将自动启动,修改其中的内容即可。
$  git commit --amend 
 
 
# 默认克隆的是主分支的内容,最后面的部分为代码仓的地址。
$  git clone ssh://xxxxxxxx
 
# 克隆指定分支的内容,最后面的部分为代码仓的地址
$  git clone -b  <具体分支名称>  ssh://xxxxxxxx
posted @ 2023-04-11 14:43  Jeffxue  阅读(28)  评论(0编辑  收藏  举报