美文网首页
git的详细使用笔记

git的详细使用笔记

作者: 不掉头发的程序猿 | 来源:发表于2018-02-11 15:52 被阅读0次

第一步:上传项目到码云上

1.建立本地git仓库

git init

2.将本地项目工作区的所有文件添加到暂存区

git add .

.表示所有文件

如果想添加项目中的指定文件那就把.改为指定文件名即可,执行后可以用git status来查看是否所有文件都已经上传到暂存区

1.如果有红色表示部分未上传,可以单个文件上传

2.如果全是绿色表示上传成功

3.将暂存区的文件提交到本地仓库

git commit -m ""

冒号里面写注释语句

4.在码云上创建自己的项目,得到远程仓库的地址

5.将本地仓库关联到码云上

git remote add origin https://gitee.com/feitiandexiaochengxuyuan/GitFenzhi.git

在这一步时如果出现错误:fatal:remote origin already exists 意思是路径存在了,就需要删除原来的路径从新添加

那就先输入  git remote rm origin

再输入   git remote add origin https://gitee.com/feitiandexiaochengxuyuan/GitFenzhi.git 就不会报错了。

6.本地仓库上传到远程仓库

git push -u origin master

如果报failed to push some refs to git 错误出现错误的主要原因是码云中的README.md文件不在本地代码目录中

可以通过如下命令进行代码合并【注:pull=fetch+merge]

git pull --rebase origin master

此时再执行语句 git push -u origin master即可完成代码上传到github

第二步:分支的建立

1.分支创建(本地创建)

(1)本地创建分支

 git checkout -b develop

(相当于$ git branch dev

               $ git checkout dev

(2)查看本地分支

git branch

(3)切换本地分支

git checkout master

(4)删除本地分支

git checkout -b develop

(5)把本地分支同步到码云上(当你从远程仓库克隆时,实际上Git自动把本地的master分支和远程的master分支对应起来了,并且,远程仓库的默认名称是origin)

查看远程仓库:

git remote

将本地分支推送到远程仓库

git push origin develop

注:并不是一定要把本地分支往远程推送,那么,哪些分支需要推送,哪些不需要呢?

master分支是主分支,因此要时刻与远程同步;

dev分支是开发分支,团队所有成员都需要在上面工作,所以也需要与远程同步;

bug分支只用于在本地修复bug,就没必要推到远程了,除非老板要看看你每周到底修复了几个bug;

feature分支是否推到远程,取决于你是否和你的小伙伴合作在上面开发。

2.远程创建(也就是拉取他们的分支)

(1)

(2)拉取下来

git checkout -b origin/dddd

3.git的操作

(1)提交到暂存区

git add .

git commit -m "第一次修改"

此时提交后切换到默认分支,可以看到修改并没修改

(2)此时推送到远程仓库

git push origin origin/dddd

推送失败,因为你的小伙伴的最新提交和你试图推送的提交有冲突,解决办法也很简单,Git已经提示我们,先用git pull把最新的提交从origin/dev抓下来,然后,在本地合并,解决冲突,再推送:

因此,多人协作的工作模式通常是这样:

首先,可以试图用git push origin branch-name推送自己的修改;

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

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

没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。

这就是多人协作的工作模式,一旦熟悉了,就非常简单

4.合并分支

一般使用普通合并

(1)回到开发分支,然后合并分支

git merge --no-ff -m "merge with no-ff" origin/dddd

(2)然后提交修改到远程仓库就好

(3)此时删除分支

5.分支分类

(1)bug分支:

1.1

bug就像家常便饭一样。有了bug就需要修复,在Git中,由于分支是如此的强大,所以,每个bug都可以通过一个新的临时分支来修复,修复后,合并分支,然后将临时分支删除。并不是你不想提交,而是工作只进行到一半,还没法提交,预计完成还需1天时间。但是,必须在两个小时内修复该bug,怎么办?

幸好,Git还提供了一个stash功能,可以把当前工作现场“储藏”起来,等以后恢复现场后继续工作:

当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交

git stash

此时你查看工作区:git status 就很干净了

2.2

创建bug分支

git checkout -b issue-101

然后提交分支

git add .

git commit -m "23"

然后切换到master完成合并

git checkout master

git merge --no-ff -m "merged bug fix 101" issue-101

然后删除bug分支

git branch -d issue-101

然后提交代码到远程上

git push origin master

最后回到develop上继续开发

此时你可以看看你的工作区存的位置

git stash list

工作现场还在,Git把stash内容存在某个地方了,但是需要恢复一下,有两个办法:

一是用git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;

另一种方式是用git stash pop,恢复的同时把stash内容也删了

(2)Feature分支:添加一个新功能时,你肯定不希望因为一些实验性质的代码,把主分支搞乱了,所以,每添加一个新功能,最好新建一个feature分支,在上面开发,完成后,合并,最后,删除该feature分支。

git checkout -b feature

开发完毕后你可以提交并回到develop上进行合并

git add .

git commit -m "gg"

git checkout develop

git merge --no-ff -m "feature01" feature

最后删除

git branch -Dfeature-vulcan

6.标签

1.给发布用的master打标签

git checkout master

git tag v0.1

查看所有版本

git tag

默认标签是打在最新提交的commit上的。有时候,如果忘了打标签,比如,现在已经是周五了,但应该在周一打的标签没有打,怎么办?

方法是找到历史提交的commit id,然后打上就可以了

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

git tag v0.9 8d27cc5

2.删除标签

git tag -d v0.1

3.推送标签

推送指定标签

git push origin v1.0

推送所有标签

git push origin --tags

4.推送后的标签删除

先从本地删除

git tag -d v0.9

然后,从远程删除。删除命令也是push,但是格式如下:

git push origin:refs/tags/v0.9

7.版本回退

HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset --hard commit_id。

穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

相关文章

  • Git与GitHub笔记(1)

    这里是本人所需的相关笔记,如果需要详细的教程可以点击这里附上git常用命令git cheatsheet 使用Git...

  • git入门使用

    由于本人现在使用git,但是之前对git了解甚少,为了减少麻烦,所以开始记笔记 关于git安装这里不做详细说明,因...

  • git的详细使用笔记

    第一步:上传项目到码云上 1.建立本地git仓库 git init 2.将本地项目工作区的所有文件添加到暂存区 g...

  • git的使用

    Git连接github的详细使用 安装git [git下载地址]: https://git-for-windows...

  • git 基本操作

    前沿:1. 本文是学习 廖雪峰git教程 时的一些笔记,大家想看详细版请阅读廖雪峰git教程2.本文中使用到的系统...

  • Git使用教程--最详细、最傻瓜、最浅显、真正手把手教!(一)

    原文链接Git使用教程--最详细、最傻瓜、最浅显、真正手把手教!(一)Git使用教程--最详细、最傻瓜、最浅显、真...

  • Git使用 - Git使用详细教程

    一:Git是什么?Git是目前世界上最先进的分布式版本控制系统。工作原理 / 流程: Workspace:工作区I...

  • git技术,GitHub、GitLab

    git学习 Git教程(小白快速入门版) Git教程(简化版) git详细学习 Gitlab的管理使用手册git初...

  • 【Git】详细笔记

    分布式版本控制系统除了Git以及促使Git诞生的BitKeeper外,还有类似Git的Mercurial和Baza...

  • Git book

    目录 git community book git入门 git笔记 git 用法 git安装使用手册 git命令大...

网友评论

      本文标题:git的详细使用笔记

      本文链接:https://www.haomeiwen.com/subject/mtoozxtx.html