git的基本使用方式

git的使用:

1.将本地的文件推到git仓库步骤:

   git远程仓库已经建好了,本地文件已经存在了,现在要将本地代码推到git远程仓库保存。

1、(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库

git init

2、把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件
git add .

3、用命令 git commit告诉Git,把文件提交到仓库。引号内为提交说明
git commit -m 'first commit'

4、关联到远程库
git remote add origin 你的远程库地址
如:
git remote add origin https://github.com/cade8800/ionic-demo.git

5、获取远程库与本地同步合并(如果远程库不为空必须做这一步,否则后面的提交会失败)
git pull --rebase origin master

6、把本地库的内容推送到远程,使用 git push命令,实际上是把当前分支master推送到远程。执行此命令后会要求输入用户名、密码,验证通过后即开始上传。
git push -u origin master

--------------------------------------

2.

查看日志

git log  或者  git reflog  或者  git log --pretty=online

回滚

git reset --hard HEAD^或者 git reset --herd  跟commit id 

查看状态

git status

提交步骤:(两步)

git add 文件       文件修改后把文件放在暂存区,

git commit -m   "说明的内容"     提交

 

查看工作区和版本库里面最新版本的区别:

git diff HEAD -- readme.txt 

删除文件(3步)

rm test.txt    在文件管理器中删除文件

git rm test.txt     在git中删除文件,

git commit -m "说明"   提交并同步

 

连接远程库:

1.要关联一个远程库,使用命令 git remote add origin git@github.com:guokaitao/learngit.git

2.关联后,使用命令 git push -u origin master 第一次推送master分支的所有内容。

3.每次本地提交后,只要有必要,可以使用命令git push origin master 推送最新修改同步。

 

 

从远程克隆:

1.远程库已经准备好了,使用命令git clone克隆一个本地库。

     使用ssh      git clone git@github.com:guokaitao/gitskills.git

  使用https    git clone https://github.com/guokaitao/gitskills.git

 

2.分支管理----git鼓励大量使用分支

查看分支:git  branch     

创建分支:git  branch  <name>   

切换分支:git   checkout   <name> 

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git mrege <name>   

删除分支:git branch -d <name>

 

3.测试流程:

1.创建并切换分支:git branch -b dev

2.修改dev下的文件  readme.txt   

3. git add readme.txt 和 git commit -m "修改了文件" 

4.分支的作用完成了,切换到master分支     git checkout master     

5.把dev分支合并到master上,git  merge  dev

6.合并完成,就可以删除dev分支了,git branch -d dev 

 

解决冲突:      当无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。

        解决冲突就是把git的合并失败的文件手动编辑为我们希望的内容,再提交。

 

4.分支管理策略:

默认合并会用 fast forward模式,但这种模式下,删除分支后,会丢掉分支信息。如果强制禁用Fast forward,就可以看出分支信息。

在把分支合并到master上的时候,请注意--no-ff参数,表示禁用Fast  forward用命令:git merge --no-ff -m "merge width no-ff" dev

合并后,git log查看分支历史信息: git log --graph --pretty=online --abbrev-commit

错误分支:

修复错误时,我们会通过新的错误分支进行修复,然后合并,最后删除,

当手头工作没有完成时,工作先把现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。

Feature分支:

强制删除分支的命令为:git branch -D <name>

多人协作的小结:

1.查看远程库的信息,用 git remote或者用git remote -v 显示更详细的信息。

2.推送分支到哪里,git push origin master 或者 git push origin dev。

3.抓取分支:git clone git@github.com:guokaitao/learngit.git。

多人协作的工作模式:

1.首先,试图可以用git push origin <branch-name>推送自己的修改。

2.如果推送失败,则因为远程分支比你的本地更新,先需要用git pull 试图合并。

3.如果合并有冲突,则解决冲突,并在本地提交。 

4.没有冲突或者解决冲突后,再用git push origin <branch-name>推送就能成功。


 

标签管理:

一:创建标签

1.在git中打标签非常简单,首先,切换到需要打标签的的分支上。git branch ;          git checkout master

2.然后,敲命令git tag <name>就可以打一个新标签。git tag v1.0 

3.可以用命令 git tag 查看所有标签

4.默认打在最新的commit的id上,如果忘了,可以找到commit id ,重新打上。

      查看    git log --pretty=oneline --abbrev-commit

  打标签git tag v0.9 commit_id

5.git show <tagname> 查看标签信息

  git show v0.9

6.创建带有说明的标签,用 -a 指定标签名,-m指定说明文字:

  git tag -a v0.1 -m "version 0.1 released " commit_id

7.git show <tagname> 可以看到说明文字

二.操作标签

1.如果标签打错了,可以删除;  git tag -d v0.1

创建的标签都只存储在本地,不会自动推送到远程,所以,打错的标签可以在本地安全删除

如果推送某个标签到远程,使用命令git push origin <tagname>;   git push origin v0.1

一次性推送全部未推送到远程库的本地标签命令: git push origin --tags

2.如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除

git tag -d v0.9

远程删除  git push origin:refs/tags/v0.9

posted @ 2018-11-21 17:22  一名前端小学生  阅读(260)  评论(0)    收藏  举报