一. 建立版本库
1. cd /e
读取e盘下
2. mkdir gitwork
创建版本库 gitwork
3. cd gitwork
读取 gitwork文件夹下
4. git init
把此目录变为git管理仓库 (此时系统自动为我们创建了第一个分支)文件夹内自动生成 .git半隐藏文件夹(用于记录版本更新信息)
5. ls -ah
用于显示隐藏的.git文件夹
二. 修改与提交
1. git add text.html
在mygitwork目录下建立一个新文件text.html 此命令为把文件添加到仓库 可多次添加不同文件(即把文件添加到暂存区)
2. git commit -m "first commit"
文件提交 -m后面内容是本次提交的说明(如不添加-m则自动弹出git-branch内置编辑器 填写提交说明)(则把暂存区所有内容提交到第一个分支master)
3. git status
显示工作区状态
4. git diff
查询修改内容(若git status显示文件修改过 可用此查询修改内容)
5. git log
查看提交历史(最近的三回)
6. git log --pretty=oneline
提交日志简化 (仅显示版本id 和修改提示)
三 . 回退/回退撤销/ 撤销 /删除
1. git reset --hard HEAD^
回退到上一版本(HEAD为当前版本 HEAD^为上一版本 HEAD^^为上上版本 HEAD~100上100个版本)
2. git reset --hard 126632
反悔回退操作 (此时使用 git log已经查询不到回退前的最新版本了 但是在git branch界面未关闭前提下 找到之前的版本号前几位即可)
3. git reflog
查看命令历史(若上一个反悔回退操作无法进行,则可以使用本操作查询版本号 再次进行反悔回退操作)
4. git checkout --first.txt
撤销(让文件回到最近一次git commit或git add时状态)(工作区的操作)
5. rm first.txt
删除工作区文件(工作区的操作)
6. git rm first.txt
删除操作放于暂存区(执行此操作后,git checkout操作无效)
四.远程库
1. ssh-keygen -t rsa -C "1398293321@qq.com"
创建sshkey 然后一路回车
2. git remote add origin git@github.com:oabdc/gitwork .git
让本地库与远程库关联
3. git push -u origin master
第一次远程推送(-u 可以把本地和远程的master关联,便于以后简化命令)
4. git push origin master
远程推送
5. git clone git@github.com:oabdc/gitnet.git
克隆一个本地库
五.分支管理
1. git checkout -b dev
创建并切换到dev分支
2. git branch dev
创建分支dev
3. git checkout dev
切换分支到dev
4. git branch
查看当前分支 (系统会列出所有分支 当前分支前会加*号)
5. git merge dev
合并指定分支到当前分支(切换到master分支 在执行此操作 既可以把dev合并到master)(合并方式 fast-forward 快进模式 此模式删除分之后会丢掉分支信息)
6. git branch -d dev
删除dev分支
7. git merge --no-ff -m "merag no-ff" dev
(本次使用 no-ff普通模式 合并时生成了一个新的commit 既可以从分支历史上看出分支信息)
8. git log --graph -abbrev-commit
查看分支 且带图
9. git log --pretty=oneline -abbrev-commit
查看分支历史简化
10. git log --graph --pretty=oneline -abbrev-commit
查看分支历史简化 且带图
六.bug分支
1. git stash
隐藏当前工作现场 (可以多次stash,即隐藏多个分支工作现场)
2. git stash apply
恢复 工作现场
3. git stash drop
删除stash内容
4. git stash pop
恢复同时删除
5. git stash list
查看stash 查看stash内容
6. git stash apply stash@{num}
num为恢复工作现场的编号
七.feature 分支
1. git branch -D <name>
强制删除新建且未被合并的分支
八.多人协作
1. git remote
查看远程库信息
2. git remote -v
查看远程库详细信息
3. git checkout -b dev origin/dev
创建本地dev分支
4. git branch --set-upstream branch-name origin/branch-name
创建本地与远程分支的链接
5. git pull
从远程库获取最新版本并合并(相当于更新本地库)
6. git fetch
从远程库获取最新版本
九.标签管理
1. git tag v1.0
给当前分支打上标签 (默认标签打在最新提交上的commit)
2. git tag
查看所有标签
3. git tag v0.9
232874 给此id值的提交打上标签
4. git show v1.3
查看此标签的详细信息
5. git tag -a v1.2 -m "this is a tag" 231231
-a指定标签名 -m指定说明文字
6. git tag -d v1.01
删除标签
7. git push origin v1.1
推送标签到远程
8. git push origin --tag
推送所有未被推送的标签
9. git push origin :refs/tags/0.9
删除远程标签(首先删除本地)