美文网首页
Git学习记录三

Git学习记录三

作者: IT_小马哥 | 来源:发表于2019-06-07 19:57 被阅读0次

我的学习记录来自于:廖老师的博客:https://www.liaoxuefeng.com/wiki/896043488029600

理论基础:
刚刚开始master分支是一条线,master指向最新的提交,HEAD指向master:


每次提交master就向前移动。
创建新的分支时,例如dev时,就新创建一个指针,指向与mater相同的提交,在把HEAD(总是指向当前分支)指向dev.
dev分支
现在每次提交,dev指针都向前移动一步,为master指针不变,
dev更新
当dev和master合并时,master指向dev的提交就行。
快速合并
然后删除dev指针,就只有master了。

操作
创建和切换到新的分支, - b表示创建新的分支
$ git checkout -b dev

也可以用两条命令:
先创建新的分支
再切换到新的分支

$git branch dev 
$git checkout dev

查看当前分支,当前分之前有一个*

$git branch

合并:(快速合并,只有一个分支进行个更新,其他分支没有进行更新)
合并dev分支到master,先切回到master分支,在合并

$git merge dev

当两个以上的分支都发生修改时,合并会出错,必须先打开文进行手动合并,然后提交。


两分支都发生了变化
手动修改完再提交

可以查看分支合并情况:

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

禁用快速合并的命令

$ git merge --no-ff -m "merge with no-ff" dev

保存当前工作状态,等以后继续使用

$ git stash

查看保存的状态

$ git stash list

恢复状态的两种方式:
第一,先回复状态,然后删除stash的内容

(可以回复指定的 git stash apply stash@{0})
$ git stash apply   #回复
$ git stash drop   #删除

第二,恢复的同时删除stash内容

$ git stash pop

删除分支

$git branch -d dev

强制删除分支

$ git branch -D dev

查看远程仓库信息:

$ git remote -v

本地文件推送远程仓库(origin是远程仓库名字,dev是分支)

$ git push origin dev

在本地创建一个远程分支(本地有分支dev,github仓库没有dev)

$ git push --set-upstream origin dev

在本地创建一个和远程分支对应的分支(本地之前空白,相当于创建本地分支,并且和远程分支关联起来)

$ git checkout -b dev  origin/dev

指定本地存在的dev分支和远程分支连接(本地有dev,但是没有和仓库的dev关联)

$ git branch --set-upstream-to=origin/dev   dev

如果在你提交前,文件已经被修改,则需要先把远程仓库的分支拉下来,然后修改

$ git pull

手动合并修改后在提交。(git push)

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

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

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

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

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

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

git带账号和密码 clone

git clone http://邮箱(或用户名):密码@仓库地址

相关文章

  • Git学习记录三

    我的学习记录来自于:廖老师的博客:https://www.liaoxuefeng.com/wiki/8960434...

  • Git学习记录:Notes for Codecademy

    Codecademy学习记录 Basic Git Workflow(Git工作流初探) git三大部分 编辑一份文...

  • Git 学习记录

    Git 学习记录 设置Git的user name和email:git config --global user.n...

  • git学习记录

    git init创建git仓库 git add添加文件到仓库 git commit -m "xxx"提交文件到仓库...

  • git 学习记录

    1、git init :初始化所在目录为git仓库(在这个目录里,可以理解为一个虚拟的空间,.git文件隐藏存在,...

  • git 学习记录

    什么是git ,git是一个分布式版本控制工具 ,而svn 是 集中式 给当前的git仓库配置用户名和邮箱 配置用...

  • Git 学习记录

    Git作为项目管理工具,已经成为开发者首选。Git概念繁多,理解不清楚,还真不太好办事。现将这段时间学习使用Git...

  • git学习记录

    工作区{ } 版本库{ } git常用命令 多人协作

  • Git 学习记录

    git addgit commitgit statusgit loggit diffgit reloggit lo...

  • git学习记录

    2016-02-28 git --versiongit config --global user.name ***...

网友评论

      本文标题:Git学习记录三

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