使用git步骤
//从远处仓库clone代码,远程仓库默认名字叫origin,可以是http方式,也可以是SSH方式
$ git clone https://github.com/mengguagua/demoVue.git
//查看当前分支
$ git branch
//指定远程分支到本地,例如dev分支
$ git checkout -b dev origin/dev
//修改文件后,查看需要add的文件
$ git status
//add . 意思是把修改全部add到暂存区,或者在后面指定需要add的文件名
$ git add .
//将暂存区的修改都提交
$ git commit -m "修改说明"
//有时候修改说明内容打错了,可以使用这个命令来修改说明内容
$ git commit --amend
//不管是不是add到暂存区的,只要修改了就提交
git commit -a -m "修改说明"
$ git pull origin dev //从远程仓库的dev分支拉取代码并合并。git pull是git fetch和git merge两个步骤的结合。
//有时pull报错,可能是要指定本地dev分支与远程origin/dev分支的链接
$ git branch --set-upstream-to=origin/dev dev
//将修改推送要远程仓库的的指定分支,例如dev。第一次推送,远程仓库为空时加-u
$ git push origin dev
修复bug步骤
//假设在dev分支上工作,工作到一半需要去master分支修复一个bug
//把当前工作内容“存储”起来,当前为dev分支
$ git stash
//或者模块就只有自己在开发的,可以把dev分支add . 然后 push 到远程仓库,再切换master去修复bug
//切换到master分支,并在master分支上建立用来解决问题的分支issue-1
$ git checkout master
$ git checkout -b issue-1
//修改bug,提交文件
$ git add readme.md
$ git commit -m "fix bug issue-1"
//切换到master分支,合并刚刚做bug修复的分支
$ git checkout master
$ git merge --no-ff -m "merged bug fix issue-1" issue-1 //--no-ff:指定不用fast方式,可以不加,issue-1是要合并的分支名
//bug修复完成,回到之前的工作中
$ git checkout dev
//查看刚刚“存储”的内容
$ git stash list
//回复“存储”的内容
$ git stash pop
回退版本
//回退到上一个修改版本,上两个是HEAD^^,上十个是HEAD~10
$ git reset --hard HEAD^
//回退后想前进,则查看版本日志reflog,通过指定 commit id 来前进到最新一个版本(id可以不写全,git会自动匹配)
$ git reflog
//$ git log --pretty=oneline //查看当前以及之前的版本日志
//$ git log --pretty=oneline --abbrev-commit //查看历史commit id
//根据 id 前进到指定的修改版本
$ git reset --hard 4beeea
打标签
//打标签。先切换到要打标签的分支,然后打标签
$ git tag v1.0
//查看标签
$ git tag
//删除标签
$ git tag -d v1.0
//推送某个标签到远程
$ git push origin v1.0
//一次性推送全部尚未推送到远程的本地标签
$ git push origin --tags
//删除以及推送的远程标签,要先删本地,再删远程
$ git tag -d v1.0
$ git push origin :refs/tags/v1.0
别名
//添加别名,例如把status 简写成st ,这样就可以使用 git st 来查看
$ git config --global alias.st status
其他
换行符设置
git config --global core.autocrlf input
git config --global core.safecrlf true
仓库当前的状态
git status
1)Untracked files → 文件未被跟踪;
2)Changes to be committed → 文件已缓存,这是下次提交的内容;
3)Changes bu not updated → 文件被修改,但并没有添加到缓存区。
git branch //查看现有分支
git branch dev //创建分支dev
git checkout dev //切换分支
git checkout -b dev //以上两句可以合并为一句
git branch -d dev //删除分支
git merge dev //合并分叉,合并前先checkout切换到master或者dev,作为当前分支
查看远程仓库信息
$ git remote -v
生成ssh kye
ssh-keygen -t rsa -C "xxx@gs.com"
连接ssh
ssh -T git@gaocc@gsoms.com
附:比较好理解的教程 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000