==git解决每次拉取代码都需要用户名密码
执行git config --global credential.helper store,在~/.gitconfig目录下会多出一个文件,这里会记录你的密码和帐号; 再执行git pull 输入一次正确的帐号密码之后就不用再输入了。
== 删除:
本地分支: git branch -d xxx 远程分支: git push origin --delete xxx
== 设置: 本地与远程分支映射关系:
绑定操作: git branch --set-upstream-to=origin/远程分支名 本地分支名
== 创建Tag并推送远程:
打Tag: git tag -a V2.3.9 -m '239 last update 2019-08-22' 单个提交远程: git push origin V2.3.9 push所有Tag: git push origin --tags 线上Bug并修复Tag: git tag -d V2.2.0 git push origin :refs/tags/V2.2.0 获取远程版本: (运维部署) git fetch origin tag V2.2.0 以tag 231签出一个新分支: git checkout -B master-231 V2.3.1
== 强制更新
强制下载远程文件替换本地: git fetch --all git reset --hard origin/xxx 强制更新单个文件 git fetch git checkout origin/xxx -- application/cron/logic/FbaSugAsinLogic.php
== 查看
查看分支: git branch -a git branch git branch -r 绑定关系: git branch -vv
== 新建
新建本地分支: git checkout -b xxx 以远程xxx分支创建本地分支: git checkout -b xxx origin/xxx 以本地xxx分支新建远程分支: git push --set-upstream origin xxx:xxx
== 清缓存问题
远程分支已删除, 本地(git branch -a)还能显示? git remote prune origin 查看哪些分支已删除: git remote show origin
== 比较
不同分支:
git diff branch1 branch2 --stat //显示出所有有差异的文件列表 git diff branch1 branch2 //显示出所有有差异的文件的详细差异
== Tag版本回退和恢复
git tag git show V2.3.2 git reset --hard commit_id
== 已加入版本的文件忽略方法
先删除文件, 再执行:git rm --cached application/api/controller/MyTestController.php git add . git commit -m 'update .gitignore'
==stash暂存代码相关
git stash 把现有的修改藏起来 git stash save “desc” 把现有的修改藏起来,并且添加一个注释 git stash list 查看所有藏起来的 git stash pop stash@{index} 删除 最近/指定 一个藏起来的,并还原回来代码 git stash apply stash@{index} 应用藏起来的不删除stash 列表 git stash drop shash@{index} 删除藏起来的不还原代码 git stash clear 清除所有修改 git stash show shash@{index} 查看修改了什么文件 git stash show -p shash@{index} 查看修改了什么文件,里面修改了什么内容