分类
git

git 常用命令详细使用

git安装下载这里不再复述,自行百度。这里主要讲解git的使用

需要明白的git 知识

工作区:在本地上操作文件增删改查

暂存区:在提交仓库前存储修改的区域,当操作 git add 命令 修改的操作就会添加到暂存区中

本地仓库:也叫做版本库,当操作git commit 命令后,修改的内容就会提交到本地仓库

远程仓库:例如github,gitee的远程代码存储仓库 。操作git push 将本地仓库的文件推送到远程仓库中

分支:主分支是master,一般用于开发主线。不同的业务可以在不同的分支上开发

获取代码

从远程仓库获取代码,默认是master 分支:
git clone git@xxxxx.git

获取远程仓库的其他分支:
git fetch origin dev 
git fetch origin dev:local_dev :将远程仓库的dev分支下载到本地并在本地新创建一个分支local_dev与远程dev自动映射

暂存区中操

添加到暂存区:
git  add  <file>:指定文件提交到暂存区
git  add .    :指将修改或新添加的所有文件提交到暂存区

从暂存区中恢复到工作间:
git  restore  –staged   <file>

从暂存库中提交到版本库:
git commit 
git commit -m ‘注释’
git commit –amend  修改最新提交的注释

将版本库的代码重置

版本库重置到某个提交,同时重置暂存区,但工作区不受影响,注意的是commit_id 之后的提交不会保留git reset commit_id

版本库重置到某个提交,同时充值暂存区和工作区,之后的commit_id不保留:
git reset –hard commit_id

特别注意:git reset 慎用

重置版本库到某个提交,且commit_id 之后的提交会保留(比git reset柔和,推荐使用):
git revert commit_id 

将本地版本库提交到远程仓库

提交到远程仓库的指定分支:
git push origin <branch> 

从远程仓库拉取代码
git pull origin <branch>

分支的操作

 1.本地分支操作

查看本地分支:git branch

创建本地分支:git  branch -b <分支名>

删除本地分支:git branch -d <分支名>

切换分支:git checkout <分支名>

创建并切换分支:git checkout -b <分支名>

合并分支:git merge <分支名>

例子:如将dev分支合并到master 分支

     首先切换当前分支到master上:git checkout master

     然后再master 分支上合并dev : git merge dev

合并其他分支的某个提交到当前分支上: 
git cherry-pick commit_id

分支名重命名:
git branch -m oldBranchName newBranchName 

将重命名的分支提交:
git push origin newBranchName 

2.远程分支操作

  查看远程分支:git branch -r

  创建分支并映射到远程分支:
git checkout -b fenzhi001 origin/fenzhi001 

  建立当前分支与远程分支的映射关系:
git branch -u origin/fenzhi001 

  撤销本地分支与远程分支的映射关系:
git branch –unset-upstream

  查看远程分支:
git remote  show origin 

  删除远程分支:
git push origin –delete <分支名> 

  看看有哪些没用的分支需要清除:
git remote prune origin –dry-run 

  整理远程仓库中已经不存在的分支:
git remote prune origin

  查看分支与远程分支追踪状态:
git branch -vv

比较文件的修改

 比较的是工作区和暂存区的差别(常用于查看本地的修改):git diff filename 

 比较的是暂存区和版本库的差别:
git diff –cached filename

 可以查看工作区和版本库的差别:
git diff HEAD filename

比较某两次提交的文件的修改:git diff commit_id1 commit_id2 filename

查看日志

 查看最新的提交:git show 

 查看指定commit id 提交所有的修改:
git show commit_id

 查看指定提交中某个文件的修改:
git show commit_id filename

 查看远程分支 
git remote show origin 

 获取某个文件的提交记录:
git log –pretty=online filename

 查看操作日志:git relog

其他常用的命令

git status : 命令用于显示工作目录和暂存区的状态

git clean 参数

    -n 显示 将要 删除的 文件 和  目录

    -f 删除 文件

    -df 删除 文件 和 目录

git clean -xdf :放弃修改或新增的没有git add 的加入暂存区的文件

之前工作是使用svn ,后来接触到git后真是爱不释手,不但它的分布式设计模式很牛,而且它的功能非常强大,只要你能想到的操作,当然即时你想不到的,git都考虑到了,因为它 的命令基本都能满足。目前我对他只管中窥豹,只见一斑。以后有机会还会继续完善博客中的git功能。

发表评论

电子邮件地址不会被公开。 必填项已用*标注