1# 初始化 2git init 3# 历史纪录 4git reflog 5# 查看当前状态 6git status 7# 提交历史 8git log
1# 把文件修改添加到暂存区 2git add [filename] 3# 把暂存区的所有内容提交到当前分支 4git commit -m 'some description' 5# 差异对比 6git diff HEAD -- [filename]
1# 查看提交日志 2git log --pretty=oneline 3# 回退到上一个版本 4git reset --hard HEAD^ 5# 回退到指定版本 6git reset --hard [版本id]
1# 让文件回到最近一次git commit或git add时的状态 2git checkout -- [filename] 3# 文件删除 4git rm [filename]
ps: 删除以后可以通过 "撤销文件修改" 恢复
1# 生成ssh key 2ssh-keygen -t rsa -C "your_email" 3# 一路回车,接下来在用户主目录里找到.ssh目录,里面找到id_rsa.pub并复制里面的内容 4# 登陆GitHub,打开“Account settings”,“SSH Keys”里面添加刚才复制的key 5# 创建一个远程仓库 xxx 6# 本地添加账户和邮箱验证 7git config --global user.name "your_github_name" 8git config --global user.email "your_email" 9# 指定远程仓库地址 10git remote add origin git@github.com:用户名/仓库名.git 11# 推送 12git push origin master
1# 查看分支 2git branch 3# 创建分支 4git branch <name> 5# 切换分支 6git checkout <name> 7# 或者 8git switch <name> 9# 创建+切换分支: 10git checkout -b <name> 11# 或者 12git switch -c <name> 13# 合并某分支到当前分支 14git merge <name> 15# 强制禁用Fast forward模式,生成一个新的commit,以便从分支历史上可以看出分支信息 16git merge --no-ff -m "merge with no-ff" dev 17# 删除分支 18git branch -d <name>
1# 创建并切换feature分支 2git switch -c feature-vulcan 3git add vulcan.file 4git commit -m "add feature vulcan" 5git switch dev 6# 情况1:合并vulcan分支到dev 7git merge --no-ff -m "merged feature vulcan" feature-vulcan 8# 情况2:丢弃并删除vulcan的情况 9git branch -D feature-vulcan
1# 创建stash,储存当前工作 2git stash 3# 切换回master 4git checkout master 5# 在master创建一个issue分支 6git checkout -b issue-101 7# 修复bug 8git add xxx.file 9# 提交 10git commit -m "fix bug" 11# 得到 [issue-101 4c805e2] fix bug 101 12# 切换回master 13git switch master 14# 合并、删除issue-101分支 15git merge --no-ff -m "merged bug fix 101" issue-101 16# 切换回dev分支 17git switch dev 18# 恢复工作区 19git stash pop 20# 同步bug修复代码到dev分支 21git cherry-pick 4c805e2