git学习小结

Posted mabaoqing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git学习小结相关的知识,希望对你有一定的参考价值。

版本控制工具:

  • 集中式:

    • CVS
    • SVN 集大成者
  • 分布式:git

  • 创始人:inux Towards 2005年

工具:

  • 最好使用linux(oh-my-zsh)
  • gitbash -> cygwin
  • git service :gitolite

工作区 --> 暂存区 --> 服务器

基本命令

#当前仓库配置文件路径:.git/config
#当前用户配置文件路径:当前用户主目录下隐藏的 .gitconfig
#配置全局用户名、邮箱, global是作用于当前用户的,不加则只作用于当前仓库,
 git config --global user.name "mbq"
 git config --global user.email "[email protected]"
#配置全局显示颜色
 git config --global color.ui tru
#为命令配置别名alias.<别名>
 git config --global alias.st status
#配置全局日志输出样式别名
git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"

#初始化git仓库
 git init

#添加文件到版本库
 git add <file>
#添加当前目录下的所有文件
 git add . 
#提交版本
 git commit -m "提交描述"
#查看仓库状态
 git status
#查看git版本区别
 git diff
#删除文件
git rm <file>

#查看提交历史纪录,倒序排列,数字表示查看最后几次提交历史
 git log [1]
#简化为一行展示
 git log --pretty=oneline
#查看自己的历史操作(可以回退到这些版本)
 git reflog

#回退到上一个版本,也可使用HEAD~100
 git reset --hard HEAD^ <file>
#回退到指定版本号,--和hard间没有空格
 git reset --hard 116f748
--soft 表示仍然保留当前工作区的更改

#撤销工作区的更改(还未进行 add 操作)
 git checkout -- readme.txt
 git checkout [commit-number] --readme.txt 将此文件退到指定版本

#创建并切换分支dev
 git checkout -b dev
#相当于以下两条命令
 git branch dev
 git checkout dev (切换到之前的版本则会进入到一个游离分支状态(分离的头指针),git merge 可以合并回来)

#查看当前分支
 git branch
#合并分支(Fast Forward)
 git merge dev
#删除分支
 git branch -d dev

#以普通模式合并分支,能从历史中看出来,而fast forward合并方式看不出来
 git merge --no-ff -m "merge with noff" dev

#图形化展示分支及合并情况
 git log --graph --pretty=oneline --abbrev-commit

#储藏当前工作空间
 git stash
#查看储存的工作空间
 git stash list
#恢复并删除储存的工作空间
 git stash pop
#相当于以下两条命令
 git stash apply
 git stash drop

#创建SSH Key
 ssh-keygen -t rsa -C "[email protected]"
#查看远程仓库信息
 git remote -v
#连接到远程仓库
 git remote add origin [email protected]:mabaoqing/learngit.git
#克隆仓库
 git clone [email protected]:mabaoqing/learngit.git
#从远程获取最新仓库
 git pull
#推送到远程仓库,-u只在第一次推送时使用,将仓库推送并关联两端master分支
 git push -u origin master 
#创建远程分支到本地
 git checkout -b dev origin/dev
#将本地dev分支和远程分支进行关联
 git branch --set-upstream-to=origin/dev dev

#为某次提交打标签,确定一个版本
 git tag v1.0 [版本号]
# 创建带有说明的标签
 git tag -a v1.0 -m 'version 1.0 releasd' [版本号]
#查看标签状态
 git show <tagname>
# 删除标签
 git tag -d <tagname>
# 推送标签到远程
 git push origin <tagname>
# 推送多个标签
 git push origin --tags
# 删除远端标签
 git tag -d <tagname>
 git push origin :refs/tags/<tagname>


#创建.gitignore文件配置需要忽略的文件,在编辑器中另存为才行,不能直接创建
#强制添加忽略的文件
 git add -f <file>
#检查.gitignore文件中的配置规则与文件匹配
 git check-ignore -v <file>

以上是关于git学习小结的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

Git-命令小结

git命令小结

git帮助和小结

git之sourceTree使用github和码云的代码小结