git
git基础使用
创建一个新仓库
echo "# git-init" >> README.md #创建文件
git init #初始化
git add README.md #添加到暂存区
git commit -m "first commit" #提交到本地仓库
git branch -M main #切换到main分支
git remote add origin git@github.com:tsingliu449966/git-init.git #添加origin远程仓库地址
git push -u origin main #推送到远程仓库的main分支
推送已存在的仓库
git remote add origin git@github.com:tsingliu449966/git-init.git #添加origin远程仓库地址
git branch -M main #切换到main分支
git push -u origin main #推送到远程仓库的main分支
查看日志
#查看状态
git status
#查看日志
git log
#查看所有操作日志 包括reset、分支切换等
git reflog
#回退提交
git reset --hard 6619fad
#创建dev分支
git branch dev
#切换到dev分支
git checkout dev
用户
git config --global --list
git config user.name
git config user.email
git config --global user.name "yourname"
git config --global user.email "youremail@xx.com"
暂存工作区
git stash
git stash apply
git stash --help
检查文件不同
git diff
git flow
新建分支
#创建分支
git branch dev
#创建并切换分支
git checkout -b dev
解决冲突
#拉取代码
git pull origin dev
#手动提交
git fetch origin dev
git merge FETCH_HEAD
git fetch origin some-branch:dev
#推送本地feature分支到远程feature分支
git push origin feature:feature
git fetch origin feature:dev
git merge FETCH_HEAD
git pull origin feature
回退版本
git reset --hard HEAD@{1}
git reset --hard 44d4c4d
git reset --hard head^
git reset --hard head~1
合并分支
#切换到dev分支
git checkout dev
#合并feature到dev分支
git merge feature
#切换到master分支
git checkout master
#合并dev到master分支
git merge dev
标签
git tag v1.0.0
git push origin master --tags
git tag -d v1.0.0
git tag list
git tag v1.1.0
git push origin :refs/tags/v1.0.0 #删除远程tag
git push origin :feature #删除远程分支
git branch -D feature #删除本地分支
git checkout -- test.txt #丢弃工作区的改动
git add test1.txt,test2.txt
git reset HEAD test2.txt #撤回加入暂存区的文件
git reset --hard head #切换回上一次提交