git常用操作

在这里插入图片描述
git checkout . 使用暂存区的内容覆盖工作区内容,从暂存区恢复所有文件
git checkout – fileName

git fetch从远程分支拉取代码 fetch常结合merge一起用
git fetch + git merge == git pull 一般要用git fetch+git merge,因为git pull会将代码直接合并,造成冲突等无法知道,fetch代码下来要git diff orgin/xx来看一下差异然后再合并。

git remote -v 查看本地仓库对应的远程仓库

git reset --soft HEAD~1 软撤销最近的一次提交(–soft 是软重置 想当于只撤消了git commit 保留了git add )
git reset --hard HEAD~1/Commit id 撤销最近的一次提交/reset到指定的节点上(–hard 相当于撤消了git commit 以及 git add )
二者区别:
git reset –-soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset -–hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的更改被冲掉

git clean -df:清除未跟踪的文件
git fetch --all:merge之前先拉一下远程仓库最新代码

repo start f1:创建分支,以实现代码分支,repo start创建的分支可使用repo upload .命令推到远程

git cherry-pick commit-id
git blame filename
git show comit-id

repo upload .不上去的时候
git push <project_server> HEAD:refs/for/<branch_name>
git push ssh://(username@,.com)… HEAD:refs/for/(remote branch)
project_server找不到,git remote -v 查找
branch_name找不到:git branch -a (如果出现remotes/project/r-dev, branch_name为:r-dev)

一般提交代码用repo upload .总报错,这时候的处理流程:
git log 查看commit-id
repo start local 创建本地分支
git cherry-pick commit-id 将提交合并到本地分支
git log 确认改动已存在本地分支上
git push …推送到远程
git reset缺省为git reset --soft

repo sync --force-sync --no-tags -cd 单个仓库名字

头指针分离
头指针分离解决方法:
git branch -f default HEAD
git checkout default

切换到当日的代码
找到那天的包 manifest
搜分支

后面的revision 就是change
git reset --hard 版本号 回退到那天的代码

代码不同步时保存本地修改:
git stash
git stash pop (拿到存的修改并删除本地的保存)
git stash list # 查看在 stash 中的缓存

git 忽略文件跟踪
touch .gitignore 创建一个名为 .gitignore 的文件,列出要忽略的文件的模式(可用glob批量忽略)

https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E6%92%A4%E6%B6%88%E6%93%8D%E4%BD%9C

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值