如何使用
与版本库相关的操作
在已存在目录中初始化仓库 —— git init
克隆现有的仓库 —— git clone
编辑并添加文件--git add
提交变动到仓库--git commit
查看Git仓库当前状态变化--git status
比较变动--git diff
查看日志--git log
Git 回退--git reset
Git重置--git reflog
将当前库添加为远程仓库-- git remote add 仓库名称 git://gitUrl
获取远程代码到本地--git fetch 仓库名称
查看远程仓库信息--git remote
工作区和暂存区
工作区(Working Directory)<br>
暂存区
基础操作
恢复文件---git log/git reset
创建仓库 --- git init/ git clone
查看修改 --- git status /git diff
版本管理
撤消修改(git commit --amend)
取消暂存的文件(git reset)
撤消对文件的修改(git --checkout)
删除文件--git rm
设置基准版本--git rebase
分支管理
git 分支
创建分支--git branch 加分支名称
查看当前分支--git branch
切换分支
git checkout 分支名称
git switch
合并分支--git merge 分支名称
删除分支--git branch -d dev
强制删除分支-- git branch -D dev
部分提交合并--git cherry-pick
使用
git cherry-pick 转移单个提交
转移指定分支的最新提交
git cherry-pick 转移多个提交
git cherry-pick 配置项
git cherry-pick 代码冲突
git cherry-pick 转移到另一个代码库
分支管理策略
分支策略
bug分支
保存工作现场--git stash
保存当前工作现场--git stash
查看当前存在的工作现场--git stash list
恢复最后一个工作现场--git stash apply
恢复最后一个工作现场并删除这个工作现场--git stash pop
当有多个工作现场要恢复某个工作现场时--git stash apply stash@{0}
删除指定工作现场--git stash drop
复制一个特定的提交到当前分支--git cherry-pick 8842ff5
示例
多人协作
查看远程分支-- git remote
推送分支--git push
git标签管理
Git 有commit,为什么还要引入tag?
创建标签 -- git tag 标签名称
命令git tag -a <tagname> -m 'messages'可以创建一个带附注的标签<br>
命令git tag -s <tagname> -m 'messages'可以创建一个带 gpg 签名的标签
查看所有标签-- git tag
查看指定标签信息--git show 标签名称
标签操作
删除标签
删除本地标签-- git tag -d 标签名称
删除远程标签--git push origin :refs/tags/remove
命令git push origin :refs/tags/<tagname>可以删除一个远程标签<br>
推送标签一个到远程仓库--git push origin <tagname>:
推送全部尚未推送到远程的本地标签--git push origin --tags
git+github
配置ssh key
验证ssh连接
配置本地github
克隆Github远程仓库