git 命令基本使用

1.git下载

官网:https://git-scm.com/downloads     默认选项安装

2.创建git仓库

   (1)安装完成后,在开始菜单栏 Git Bash 打开命令窗口

          配置:

                git config --global user.name "wangzhichao"
                git config --global user.email "785045376@qq.com"

   (2)命令 cd D:  ,【切换到D盘】

   (3)命令:mkdir 文件夹名称 ,【创建文件夹】

   (4)命令:cd 文件夹名称,【进入文件夹】;命令:pwd ,【显示当前文件夹目录】

   (5)命令:git init 【把目录变成git仓库】,自动生成 .git文件目录(不可删除和修改)

3.添加文件

   (1)命令:git add xxx ,【添加文件】    git add 文件名称1 文件名称2 ,【添加多个文件】

   (2)命令:git commit -m "添加描述",   【-m表示提交文件时的描述】

4.查看修改日志

     命令:git log ,   【查看提交历史  命令:git log --pretty=oneline  简化日志】

     命令:git reflog , 【查看命令历史】

     命令:git log --graph --pretty=oneline --abbrev-commit 【查看分支合并情况】

5.查看仓库状态和文件修改

   命令:git status ,【文件是否被修改过(文件状态)】

   命令:git diff xxx ,【查看修改的内容(文件修改了,但是没有add、commit可以使用该命令查看具体文件修改)】

6.版本回退

   命令:git reset --hard HEAD^  ,【回退到上个版本】

   命令:git reset --hard HEAD^^  ,【回退到上上个版本】

   ....以此类推,所以要退回到具体版本(通过 git log 查看各个版本): 

   命令:git reset --hard  xxx(ID前几位,下方黄色commit id),【回退到具体版本】

             

   回退后发现想回退到最初版本,通过git log查看版本id不存在了,可以通过git reflog查看历史命令

7.工作区与暂存区

   git diff    【是工作区(work dict)和暂存区(stage)的比较】

   git diff --cached    【是暂存区(stage)和分支(master)的比较】

   git diff HEAD -- 文件名【查看工作区和版本库最新版本区别】

8.撤销修改

   场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,命令:git checkout -- 文件

   场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改。第一步 命令:git reset HEAD 文件,就                    回到了场景1,第二步按场景1操作。

   场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,通过版本回退,不过前提是没有推送到远程库。

9.删除文件

   命令:rm 文件名,【删除工作区的文件】

   命令:git rm 文件名,【从版本库删除】

10.项目克隆

   命令:git clone 项目地址

11.创建合并分支

    命令:git checkout -b dev ,【创建并切换到dev分支】,-b表示创建并切换分支,相当于git branch dev,git checkout dev

    命令:git branch 【查看当前分支】

    命令:git checkout master 【切回主干分支】

    命令:git merge dev 【把dev分支合并到master分支】

    命令:git branch -d dev 【删除dev分支】

    新版本:

            命令:git switch -c dev 【创建并切换到dev分支】

            命令:git switch master 【直接切换到已有的master分支】

    Git鼓励大量使用分支:

    查看分支:git branch

    创建分支:git branch <name>

    切换分支:git checkout <name>或者git switch <name>

    创建+切换分支:git checkout -b <name>或者git switch -c <name>

    合并某分支到当前分支:git merge <name>

    删除分支:git branck -d <name>

12.分支管理策略

    通常,合并分支时,如果可能,Git会用Fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。 如果要强制禁用      Fast forward模式,Git就会在merge时生成一个新的commit,这样,从分支历史上就可以看出分支信息。

    命令:git merge --no-ff -m "merge with no-ff" dev   【--no-ff参数,表示禁用Fast forward】【合并分支并可以查看历史信息】

13.bug分支

   命令:git stash 【把当前dev分支存起来】

   切换到主干分支bug修复完成后,在恢复

   命令:git stash list 【查看存储列表】

   命令:git stash apply 【恢复刚才存储的内容】 git stash drop 【删除存储的内容】

   命令:git stash pop 【恢复的同时也把存储的内容删除】

    修复bug完成后,切换到dev分支把修复完的代码同步到dev分支,使用:

   命令:git cherry-pick <commit>  【commit 为bug提交的id】

14.删除为合并的分支

     如果要丢弃一个没有被合并过的分支,可以通过git  branch -D <分支名>   强行删除。

15.查看远程仓库信息【远程仓库名为origin】

    命令:git remote 【查看远程仓库信息】

    命令:git remote -v 【查看远程仓库详细信息】

16.推送分支

    命令:git push origin master 【推送分支】就是把该分支上的所有本地提交推送到远程库。推送时,要指定本地分支,这样,                 Git就会把该分支推送到远程库对应的远程分支上

17.抓取分支    

     命令:git pull <抓取分支,更新代码> ,如果有冲突,要先处理冲突。

     命令:git checkout -b <分支名> origin/<分支名>,<在本地创建和远程分支对应的分支>   ,本地和远程分支的名

                称最好一致;

     命令:git branch --set-upstream <分支名> origin/<分支名>,<建立本地分支和远程分支的关联>

18.整理本地提交历史

    命令:git rebase 【整理历史提交结构】

    通过命令:git log --graph --pretty=oneline --abbrev-commit  查看时比较整洁

19.标签管理

    发布新的版本后需要把代码打个版本,用到了标签。

    命令:git tag <name>【name 为版本号,打一个新的标签版本】

    命令:git tag 【查看各个打过标签的版本】

    命令:git tag <name> <commit id> 【根据提交的id 打tag版本】,比如对之前提交的代码打版本

    命令:git tag -a  <版本号>  -m "描述"  <commit id> 【带有说明的标签】用-a指定标签名,-m指定说明文字

    命令:git show <tagname> 【查看标签信息】

    命令:git tag -d <版本号> 【删除tag版本】

    命令:git push origin <版本号>  【推送某个版本到远程仓库】

    命令:git push origin --tags 【推送本地所有没有推送到远程仓库的版本】

    删除远程仓库tag标签:

           先删除本地版本:git tag -d <版本号>

           在执行:git push origin :refs/tags/<版本号>

 

 

 

学习自:https://www.liaoxuefeng.com/wiki/896043488029600

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值