git 的日常使用记录

之前用git命令行提交代码的,后面用了段时间小乌龟,以至于命令行使用生疏了,真应了那句话:用则熟,不用则生。谨以记录之前的笔记,中间如用一些谬误,还请不吝指出,感谢!

常用指令:

1、git add readme.txt
2、git commit -m "注释"
3、git diff readme.txt   //文件修改了,但未提交,此命令可查看改了什么内容
4、git log     //显示最近到最远的日志
5、git reset --hard HEAD^   //返回上个版本,HEAD^^退到上上版本
   git reser --hard (+commitID)   //返回到某个版本
6、cat readme.txt   //查看readme.txt内容
7、git reflog      //显示所有版本号日志版本,再通过git reset --hard (commitID),返回到哪个版本。
8、git checkout fileName   //移除这个文件的修改
git checkout . #    //移除所有的修改
rm b.txt    //删除这个文件
9、git commit --amend //再次提交,覆盖上次的提交
10、git pull origin master //更新本地代码
11、git push origin master //提交
12、在一个分支下,出现多个提交(commits),但是代码没有冲突的情况下,可以输入:git rebase -i 来合并到一个commit上。
13、git stash save -u //添加到缓存区(包括新建文件)
14、git stash apply //把缓存区内容拉到该分支

创建与合并分支命令:

1、git branch   //查看自己分支
2、git bracnh -a      //查看所有分支
3、git branch name   //创建分支
4、git checkout name    //切换分支
5、git checkout -b name   //创建+切换分支
6、git merge name     // 合并某分支到当前分支
7、git branch -d name     //删除分支

提交代码步骤

1、git status     //查看你修改的文件
2、git add .  //提交所有修改
3、git commit -m "+注释"   //提交并注释
4、git push origin sven0228   //提交到sven0828分支
修改后再次提交:git commit --amend
git push origin sven0228 --force
git checkout -b sven0308 origin/v_2.2.32  //再从某主干分支拉新分支

解决冲突:

1、git fetch   //拉取最新的
2、git rebase
   git status (查看哪些文件冲突,并手动解决冲突)
3、git add .
   git rebase --continue

回退命令:

1、修改某文件后,但又不想修改了,且未进行git add操作:
解决方法: git checkout fileName
2、修改某文件后,进行add操作,但又不想修改了:
解决方法:git reset HEAD fileName
3、修改某文件后,进行add且进行git commit 操作,需要回退前一步(进行add,但未进行commit):
解决方法:git reset --soft HEAD^
4、修改文件后,进行add且进行git commit操作,需要还原文件(未被add,未被commit):
解决方法:git reset --hard HEAD
5、回退到上个版本(commitID版本)状态:
解决方法:git reset --hard commitID

更换git 远端仓库地址:

最近要在原项目基础上开发新项目,把原项目拉下来,更换一个git地址即可
1、首先把项目拉下来,并保存修改:

git commit -m "message"

2、移除之前的远端地址:

git remote remove origin

3、将新的git地址添加进去

git remote add origin [new .git url]

4、最后提交所有代码

git push -u origin master

查看Git 提交日志

git log --pretty=format:"%ad | %s%d  (%an)" --date=short

删除远程分支

git push origin --delete dev          //删除远程分支
git branch -D dev                     //删除本地分支

统计项目代码总量:

git log  --pretty=tformat: --numstat | awk '{ add += $1; subs += $2; loc += $1 - $2 } END { printf "added lines: %s, removed lines: %s, total lines: %s\n", add, subs, loc }'

代码回退至某个版本,并覆盖git

git reset --hard 123456789  // 回退到某个commitID
git push -f                // 强制把该commit内容推到远程仓库

代码回退至某个分支,并覆盖这个分支(如把dev分支推到master)

git reset --hard origin/dev  // 在master分支上,重置内容为dev分支
git push -f                // 强制把该commit内容推到远程仓库

放弃本地所有修改、新增、删除文件和目录

git checkout . && git clean -df

注释:
git checkout .       //放弃本地修改,没有提交的可以回到未修改前版本
git clean            //是从工作目录中移除没有track的文件.
git clean -df        //-d表示同时移除目录,-f表示force,因为在git的配置文件中,clean.requireForce=true,如果不加-f,clean将会拒绝执行.

本地已远超冲突,强制拉取远程代码

git fetch --all //只是下载代码到本地,不进行合并操作
git reset --hard origin/master  //把HEAD指向最新下载的版本

查看用户名和邮箱地址:

$ git config user.name
$ git config user.email

// 修改用户名和邮箱地址:
$ git config --global user.name "username"
$ git config --global user.email "email"

git 强推跳过eslint检查

git commit -m "XXX" 改为 git commit --no-verify -m "XXX"

git查看当前分支是基于哪个分支拉取

git reflog show --date=local | grep develop
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值