核心提示:git简介是目前世界上最先进的分布式版本控制系统git安装首先是git的安装,windows和linux安装有所不同,网上的教程很多,安装也很简单,这里不再赘述,但是安装结束后,要设置用户名和邮箱gi...
git简介
是目前世界上最先进的分布式版本控制系统
git安装
首先是git的安装,windows和linux安装有所不同,网上的教程很多,安装也很简单,这里不再赘述,但是安装结束后,要设置用户名和邮箱
git命令总结
git config --global user.name "username" git config --global user.email "your email"
repository是版本库,又名仓库,是git管理所有的文件的目录,创建版本库很简单,到合适的目录下面,新建文件夹,我这边是新建到g盘
cd g: //先到g盘目录下 mkdir gitStudy //新建文件夹 cd gitStudy/ // 修改路径 pwd //查看当前仓库的目录
git初始化
git init
git 把工作区文件提交到暂存区
git add 单个文件名 或 git add .(全部文件)
文件推送到当前分支
git commit -m "本次提交说明"
查看远程库信息
git remote -v
本地仓库与远程库建立连接
git remote add origin https://github.com/githubName/repositoryName.git
本地文件推送到远程库
git push -u origin master //首次推送 git push || git push origin ||git push origin master //之后 推送到master,origin默认为master,3种都可以
查看仓库当前的状态,是否有文件修改过
git status
对比当前和之前的文档,查看修改的内容
git diff 文件名
显示从近到远的提交日志
git log
回退版本
git reset --hard HEAD //HEAD 是当前版本,上一个版本是HEAD^ git reset --hard commit_id
查看历史命令
git reflog
丢弃工作区的修改
git checkout -- fileName
丢弃暂存区的修改
第一步:git reset HEAD fileName //把暂存区的修改退回到工作区 第二步:git checkout -- fileName //然后再丢弃工作区的修改
删除文件
git rm fileName //删除工作区的文件,但版本库还有 git commit -m "remove fileName" //删除版本库的文件 git checkout -- fileName //把误删的文件一键还原
克隆文件到本地
git clone git@github.com:githubName/fileName.git //记得把git bash 中的目录修改为存储文件的目录
创建分支
git branch branchName || git checkout -b branchName //创建并切换分支
查看分支
git branch
切换分支
git checkout branchName
合并分支
git merge 指定branch //合并指定分支到当前分支
删除分支
git branch -d branchName git branch -D branchName //强制删除分支
查看文件内容
cat fileName
修改文件内容
vim fileName
查看分支合并图
git log --graph
删除分支,但不删除分支信息
git merge --no-ff -m "merge with no-ff" dev //--no-ff 表示禁用fast-forward模式,即删除分支时,保留分支信息
临时工作现场
git stash //临时工作现场 git stash list //查看工作现场 git stash apply stash@{0} //恢复工作现场 git stash drop //删除工作现场 git stash pop //恢复的同时将工作现场删除
git显示颜色
git config --global color.ui true
配置别名
git config --global alias.st status //st代表别名 status代表原命令
远程抓取分支
git pull
新建标签
git tag v1.0 //默认为head git tag v1.0 commit_id //指定的commit_id加标签
查看所有标签
git tag
查看指定标签内容
git show v1.0
推送标签
git push origin tagName //一个本地标签 git push origin --tags //推送全部未推送过的本地标签
删除标签
git tag -d tagName //删除本地标签 git push origin :refs/tags/tagName //删除一个远程标签
总结:上学期学了廖雪峰的git教程,这次算回温吧!看了2遍,会发现之前没有注意到的东西,这次想总结一下,也方便自己查阅,温故而知心呐!