git 常用命令

1.克隆项目到本地

git clone https://git.oschina.net/Tocy/SampleCode.git

2.配置用户名和邮箱

git config --global user.name "Tocy"

git config --global user.email zyvj@qq.com

3.查看git中的配置 比如用户名 邮箱

git config -l

用户的配置 与 C:\Users\admin\.gitconfig 文件一直 也会同步修改

4.查看分支

git branch 查看本地分支

git branch -v 查看远程分支

git branch -a   查看所有分支(远程和本地的)

5.查看git操作历史

    git log                                      

    git log --oneline       //只显示 commit id  和备注信息   比较清晰 

6.新建分支

git branch  新分支名称          新建分支但不切换到新分支

git checkout -b  新分支名称      新建分支 且 切换到新分支

git checkout -b  新分支名称   origin/master   从master分支上 新建分支 且 切换到新分支

 注意:这里只是本地创建分支,需要推送到远程仓库  git push origin  新分支名称

7.删除分支

git branch  -b  分支名称

8.切换分支

git checkout master

9.拉取远端分支内容

git pull = git fetch + git merge FETCH_HEAD

git pull --rebase = git fetch + git rebase FETCH_HEAD

git fetch: 更新git remote 中所有的远程仓库所包含分支的最新commit-id, 将其记录到.git/FETCH_HEAD文件中

git pull : 首先,基于本地的FETCH_HEAD记录,比对本地的FETCH_HEAD记录与远程仓库的版本号,然后git fetch 获得当前指向的远程分支的后续版本的数据,然后再利用git merge将其与本地的当前分支合并。

引申:git pull 和git pull -rebase 区别

参考文档:git pull --rebase的作用是什么,它与git pull有什么区别?_令狐掌门的博客-CSDN博客_git pull rebase

用户李四在cid2 新拉出分支tmp开发

 

 在master 上合并temp

git pull : 将tmp上的提交记录作为新的commit提交到cid6

 git pull --rebase:没有产生新的节点,使用rebase的git路线(提交树)是一直向前的

10.基于前一次commit信息,继续提交

git commit  --amend

之后会显示 注释内容,修改后 :wq 保存退出   :q  不保存退出

11.将几次commit合并为一次commit

    参考文档:git合并多次commit成一个后push_yylの博客的博客-CSDN博客_git多次commit如何push

   a>  git rebase -i  HEAD~3    例:要将后三次的commit合为一次commit

   b> 将不显示的commit记录 pick修改为s ,切不可删除否则代码会丢失

   b>  修改commit注释,:wq  保存退出编辑即可      :q  不保存退出

在这里插入图片描述

12.push之后想回退到某个git版本

      git reset --hard 48e55873802c42a5e298c7484c96b49dfc9f32da 

               (只是回退本地的版本记录,远程仓库的记录不变) 

      git reset --hard HEAD~1    (本地回退到上一个记录) 

      git push -f -u origin master    (将本地内容,强制推送到远程仓库。会覆盖远程仓库内容)

    注意 :回退后,版本之后的记录不会有保留记录   慎用

13.查看git 被回退的记录,并恢复

    git  reflog       //可以看到所有的提交操作记录   git log 只能看到被回退后 之前的记录

    git reset --hard  提交的版本id

14.将未提交的内容保存在堆栈区

    参考文档:git stash详解_淹不死的水的博客-CSDN博客_git stash

    git stash save  "暂时保存1"

    git stash  pop        将当前stash中的内容弹出, 并 删除记录

    git stash apply       将当前stash中的内容弹出, 不会 删除记录

    git stash list      查看当前stash中的内容

    git stash clear    清空stash中的内容

注释:该命令可将修改的内容,迁移到其他分支上继续修改

15.合并另一个分支的部分代码

参考文档:git cherry-pick 教程 - 阮一峰的网络日志

    git cherry-pick  id         //这里的id为另一个分支的提交版本id

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值