git基本使用以及工作中常用的基本操作命令

git基本使用

1.安装好git之后,新建一个文件夹 (新建的仓库和编写的代码都写在这个文件夹中)

2.window系统进入到文件夹, 右键出现Git Bash Here代表安装成功,点击它就会出现一个小黑框。若是mac可以看下我写的另外一篇文章可以在当前文件目录下快速打开终端,若是习惯使用指令的话也可以cd

3.就在小黑框里写: git init (意思是初始化一个仓库)会出现一个隐藏的.git文件夹,不要动这个文件夹。

工作中常用的命令

  • git clone url  拷贝一个 Git 仓库到本地
  • git add . 添加当前目录的所有文件到暂存区
  • git commit -m “备注信息” 将暂存区内容添加到仓库中
  • git pull origin master 拉取远程分支并合并
  • git push 提交本地到远程
  • git status 查看仓库当前的状态,显示有变更的文件
  • git log 查看历史提交记录

新建代码库

git init 初始化

# 初始化本地仓库,在当前目录下生成 .git 文件夹
$ git init

# 新建一个目录,将其初始化为Git代码库
$ git init [project-name]

git clone 从远程仓库克隆一个版本库到本地

# 默认在当前目录下创建和版本库名相同的文件夹并下载版本到该文件夹下
$ git clone <远程仓库的网址>

# 指定本地仓库的目录
$ git clone <远程仓库的网址> <本地目录>

# -b 指定要克隆的分支,默认是master分支
$ git clone <远程仓库的网址> -b <分支名称> <本地目录>

git配置

git config 配置

# 显示当前的Git配置
$ git config --list

# 编辑Git配置文件
$ git config -e [--global]

# 设置修改修改用户邮箱和用户名
$ git config [--global] user.name "[用户名]"
$ git config [--global] user.email "[邮箱地址]"

增加/删除

git add 把要提交的文件的信息添加到暂存区中

# 添加当前目录的所有文件到暂存区
$ git add .

# 添加指定文件到暂存区
$ git add [file1] [file2] ...

# 添加指定目录到暂存区,包括子目录
$ git add [dir]

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

git rm 删除文件或文件夹

# 删除工作区文件,并且将这次删除放入暂存区
$ git rm [file1] [file2] ...

# 停止追踪指定文件,但该文件会保留在工作区
$ git rm --cached [file]

git mv 重命名文件或者文件夹

# 改名文件,并且将这个改名放入暂存区
$ git mv [file-original] [file-renamed]

提交代码

git commit 将暂存区中的文件提交到本地仓库

# 把暂存区中的文件提交到本地仓库中并添加描述信息
$ git commit -m "<提交的描述信息>"

# 修改上次提交的描述信息
$ git commit --amend

# 提交工作区自上次commit之后的变化,直接到仓库区
$ git commit -a

# 提交时显示所有diff信息
$ git commit -v

查看信息

git status 查看本地仓库的状态

# 在你上次提交之后是否有对文件进行再次修改
$ git status

# 以简短模式查看本地仓库的状态
# 会显示两列,第一列是文件的状态,第二列是对应的文件
# 文件状态:A 新增,M 修改,D 删除,?? 未添加到Git中
$ git status -s

git log 显示提交的记录



# 显示当前分支的版本历史
$ git log

# 显示commit历史,以及每次commit发生变更的文件
$ git log --stat

# 搜索提交历史,根据关键词
$ git log -S [keyword]

# 显示某个commit之后的所有变动,每个commit占据一行
$ git log [tag] HEAD --pretty=format:%s

# 显示某个commit之后的所有变动,其"提交说明"必须符合搜索条件
$ git log [tag] HEAD --grep feature

# 显示某个文件的版本历史,包括文件改名
$ git log --follow [file]
$ git whatchanged [file]

# 显示指定文件相关的每一次diff
$ git log -p [file]

# 显示过去5次提交
$ git log -5 --pretty --oneline

git diff 比较版本之间的差异

# 显示暂存区和工作区的差异
$ git diff

# 显示暂存区和上一个commit的差异
$ git diff --cached [file]

# 比较当前文件和上次提交时的差异
$ git diff HEAD

# 比较两个分支之间的差异
$ git diff <分支名称> <分支名称>

# 查看两个分支分开后各自的改动内容
$ git diff <分支名称>...<分支名称>

# 显示今天你写了多少行代码
$ git diff --shortstat "@{0 day ago}"

版本穿梭

git reset 版本回滚

# 版本回滚的命令
git reset --hard 版本号

# 上一个版本
HEAD^ 

# 上上一个版本
HEAD^^      
# 查看所有的日志,包括回滚的日志
git reflog

# 查看一行类型的日志,包括版本号
git  log --oneline
​               

branch分支

git branch 分支命令

# 列出本地的所有分支,当前所在分支以 "*" 标出
$ git branch

# 列出本地的所有分支并显示最后一次提交,当前所在分支以 "*" 标出
$ git branch -v

# 创建新分支,新的分支基于上一次提交建立
$ git branch <分支名>

# 修改分支名称
# 如果不指定原分支名称则为当前所在分支
$ git branch -m [<原分支名称>] <新的分支名称>
# 强制修改分支名称
$ git branch -M [<原分支名称>] <新的分支名称>

# 删除指定的本地分支
$ git branch -d <分支名称>

# 强制删除指定的本地分支
$ git branch -D <分支名称>

# 切换分支
$ git checkout <分支名>

远程同步

git remote 操作远程库

# 列出已经存在的远程仓库
$ git remote

# 列出远程仓库的详细信息,在别名后面列出URL地址
$ git remote -v
$ git remote --verbose

# 添加远程仓库
$ git remote add <远程仓库的别名> <远程仓库的URL地址>

# 修改远程仓库的别名
$ git remote rename <原远程仓库的别名> <新的别名>

# 删除指定名称的远程仓库
$ git remote remove <远程仓库的别名>

# 修改远程仓库的 URL 地址
$ git remote set-url <远程仓库的别名> <新的远程仓库URL地址>

git pull 拉取远程分支

# 将远程主机 origin 的 master 分支拉取过来,与本地分支合并
git pull origin master

git push 提交本地到远程

# git push 将本地的分支版本上传到远程并合并
© 版权声明
THE END
喜欢就支持以下吧
点赞0
分享
评论 抢沙发