git基本操作
使用了一个多月的git,这里记录一下日常常用的操作。
-- 查看所有分支(本地)
$git branch
-- 查看所有分支(远程)
$git branch -r
-- 查看所有分支(本地+远程)
$git branch -a
-- 创建分支
$git checkout -b branchName
-- 删除分支
$git branch -d branchName
-- 删除远程分支
$git push origin --delete branchName
-- 切换分支
$git checkout branchName
-- 拉取远程指定分支
[直接拉取]git clone -b 分支名 仓库地址
[本地已有相关代码]git checkout -b 本地分支 目的分支
-- 查看仓库状态
$git status
-- 查看某文件修改内容
$git diff fileName
-- 提交到远程仓库
$git add //添加到暂缓区
$git commit -m "注释" //提交到当前分支
$git push origin branchName //提交到远程分支
-- 查看历史记录
$git log (--pretty=oneline)
$git reflog
-- 撤销修改
[1. 修改后没有放到暂存区,回到版本库;2.添加到暂存区,再次修改,回到添加到暂存区的状态]
$git checkout -- fileName
-- 回退
$git reset --hard HEAD^ //回退到上一个版本
$git reset --hard HEAD^^ //回退到上上个版本
$git reset --hard HEAD~99 //回退到上99个版本
-- 回退到指定版本
$git reset --hard commitid
-- 一波骚操作 [删除本地分支,新建一个分支,拉取远程公共仓库的代码]
$git branch -d oldBranchName
$git checkout -b MAP-2970 origin/dev-资产配置-common
-- 由于远程新建的分支没有更新到本地,本地拉取远程分支失败
-- 仓库有其他操作后,本地未同步就需要这波操作,与[$git pull]的区别我目前还不太清楚
$git fetch origin //一般只要这句就够,这个操作常常用到哦
$git remote update origin -prune
-- 冲突解决
1.将个人开发分支代码提交到远程个人开发分支;
$git push origin [originName]
2.新建本地分支a 【基于远程个人分支】;
$git checkout -b a origin/[originName]
3.拉取远程合并时冲突分支的代码【此时在分支a下】;
$git fetch origin 要合并的分支:temp //拉取该分支带本地并在本地命名为temp
4.a merge 远程主分支;
$git merge temp
5.冲突解决,此时在本地解决具体的冲突;
6.push本地分支a[冲突已解决]到远程分支a;
【-- 提交到远程仓库 】
7.申请merge远程分支a到主分支。
————————————来自 大中国的智慧结晶
浙公网安备 33010602011771号