git 学习
参考 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
笔记部分:
git init 初始化仓库
git config --globel user.name "" 当前git用户名
git config --globel user.email "" 当前git邮箱
git add <FILE_NAME> 文件给git管理
git commit -m <COMMIT MESSAGE> 文件提交
git status git中文件状态
git diff git中不同文件的对比
git log git文件提交日志
git log --pretty=oneline 项目提交日志,做一行显示
****在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),
上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
git reset --hard HEAD^ 回到上个版本
git reset --hard <COMMIT ID> 回到上个版本
git reflog 用来记录你的每一次命令
工作区 ==> 暂缓区 ==> 仓库
本地修改 -- > git add --> git commit
git add 命令实际上就是把要提交的所有修改放到暂存区(Stage)
git commit 就可以一次性把暂存区的所有修改提交到分支
git diff HEAD -- <FILE_NAME> 命令可以查看工作区和版本库里面最新版本的区别
git reset HEAD <FILE_NAME> 命令既可以回退版本,也可以把暂存区的修改回退到工作区
git rm <FILE_NAME> 移除一个文件并用git commit提交
git checkout -- <FILE_NAME> 从仓库获取最新文件;可以丢弃工作区的修改
------------------------------------------------------------------
远程仓库
ssh-keygen -t rsa -C <EMAILL> 创建SSH Key
git push <NAME> 把本地库的内容推送到远程
git remote add origin <REPO_URI> 关联一个远程库,
git push -u origin master 关联一个远程仓库,第一次推送master分支的所有内容
git push origin master 此后,每次本地提交后,只要有必要,就可以使用命令推送最新修改
git checkout -b <BRANCH_NAME> 创建并切换到分支
git branch 查看当前分支
git merge <BRANCH_NAME> 合并某一分支
git branch -d <BRANCH_NAME> 删除一个分支
git log --graph 命令可以看到分支合并图。
git merge --no-ff -m "<MSG>" <BRANCH_NAME> 删除分支后,不会丢掉分支信息
git log --graph --pretty=oneline --abbrev-commit 查看分支历史
git stash 保留工作现场当前分支修改(切换到未修改分支,修改bug,然后合并分支)
git stash apply 恢复保留的修改(恢复后,stash内容并不删除,git stash drop删除)
git stash pop 恢复保留的修改(恢复后,stash内容并删除)
git stash list 显示所有保留修改
git remote 查看远程库的信息
git remote -v 显示更详细的信息
git push origin <BRANCH_NAME> 推送当前分支内容到仓库
git tag <VERSION> 打标签
git tag <VERSION> <COMMIT_ID> 历史提交的某一版本打标签
-a -m "" 标签说明文本
-d <VERSION> 删除标签
git push origin <tagname> 可以推送一个本地标签;
git push origin --tags 可以推送全部未推送过的本地标签;
git tag -d <tagname> 可以删除一个本地标签;
git push origin :refs/tags/<tagname> 可以删除一个远程标签。
git checkout -b <BRANCH_NAME> origin/<BRANCH_NAME>如要在dev分支上开发,就必须创建远程origin的dev分支到本地,于是他用这个命令创建本地dev分支
git branch --set-upstream <BRANCH_NAME> origin/<BRANCH_NAME> 本地分支和远程分支的链接关系创建

浙公网安备 33010602011771号