为了账号安全,请及时绑定邮箱和手机立即绑定

【金秋打卡】第10天 关于git、git flow的知识点

标签:
职场生活

课程名称:六大场景 关于Git你需要知道的知识点

课程章节关于Git你需要知道的知识点
课程讲师: Brian

课程内容:

git flow

经典模型的问题

1、必须使用dev分支

2、复杂度高:修复与发行版分支

3、多次合并合并

现在多数用的git flow

适用于持续集成多环境场景

上游分支向下游发展

流程∶Bug->New Branch->master->pre branch->Target Branch
如何使用git
git使用https协议,每次pull, push都要输入密码,相当的烦。
使用git协议,然后使用ssh密钥。这样可以省去每次都输密码。

需要三个步骤:

一、本地生成密钥对;

二、设置github上的公钥;

三、修改git的remote url为git协议。
1、生成密钥
大多数 Git 服务器都会选择使用 SSH 公钥来进行授权。系统中的每个用户都必须提供一个公钥用于授权,没有的话就要生成一个。生成公钥的过程在所有操作系统上都差不多。首先先确认一下是否已经有一个公钥了。SSH 公钥默认储存在账户的主目录下的 ~/.ssh 目录。

 绑定邮箱:ssh-keygen -t rsa -C "your_email@youremail.com" 
 输入密码:Enter passphrase (empty for no passphrase): [Type a passphrase] 
 生成文件:Your identification has been saved in /home/you/.ssh/id_rsa. 

2、添加公钥到你的github帐户
2-1、查看你生成的公钥:大概如下:

$ cat ~/.ssh/id_rsa.pub  

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAklOUpkDHrfHY17SbrmTIpNLTGK9Tjom/BWDSU GPl+nafzlHDTYW7hdI4yZ5ew18JH4JW9jbhUFrviQzM7xlE
LEVf4h9lFX5QVkbPppSwg0cda3 Pbv7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8V6RjsNAQwdsdMFvSlVK/7XA t3FaoJoAsncM1Q9x5+3V
0Ww68/eIFmb1zuUFljQJKprrX88XypNDvjYNby6vw/Pb0rwert/En mZ+AW4OZPnTPI89ZPmVMLuayrD2cE86Z/il8b+gw3r3+1nKatmIkjn2so1d01QraTlMqVSsbx NrRFi9wrf+M7Q== schacon@agadorlaptop.local

2-2、登陆你的github帐户。然后 Account Settings -> 左栏点击 SSH Keys -> 点击 Add SSH key

2-3、然后你复制上面的公钥内容,粘贴进“Key”文本域内。 title域,你随便填一个都行。

2-4、完了,点击 Add key。

这样,就OK了。然后,验证下这个key是不是正常工作。

$ ssh -T git@github.com

如果,看到:

Hi username! You've successfully authenticated, but GitHub does not # provide shell access.

就表示你的设置已经成功了
3、修改你本地的ssh remote url. 不用https协议,改用git 协议
确保:

你已经init了一个空仓库。

你已经把远程git的url添加到了本地git仓库的配置文件
可以用git remote -v 查看你当前的remote url

$ git remote -v
origin https://github.com/someaccount/someproject.git (fetch)
origin https://github.com/someaccount/someproject.git (push)
可以看到是使用https协议进行访问的。

你可以使用浏览器登陆你的github,在上面可以看到你的ssh协议相应的url。类似如下:

git@github.com:someaccount/someproject.git

这时,你可以使用 git remote set-url 来调整你的url。
git remote set-url origin git@github.com:someaccount/someproject.git

完了之后,你便可以再用 git remote -v 查看一下。

$ git remote -v
origin https://git@github.com:someaccount/someproject.git (fetch)
origin https://git@github.com:someaccount/someproject.git (push)

OK。

至此,你就可以省去输入密码的麻烦,也可以很安全的进行push,pull,fetch,checkout等操作了。

你可以用git fetch, git pull , git push。
git status命令:可以让我们时刻掌握仓库当前的状态。

git diff命令:让我们查看文件与版本库中的区别。
克隆仓库:

$ git clone [user@]example.com:path/to/repo.git/
或者添加远程仓库:

使用git remote add命令,添加一个远程仓库的链接,命令格式:git remote add [远程仓库别名] [远程仓库地址]

$ git remote add origin git@github.com:michaelliao/learngit.git
拉取代码。

如果已经被git管理的项目,则使用git pull和git fetch来管理代码的拉取与更新:

使用git pull拉取远程代码的HEAD头标记,即最新的代码。

命令格式:$ git pull <远程主机名> <远程分支名>:<本地分支名>

$ git pull
提交代码
把所有的文件更改提交到暂存区:

$ git add -a

为所有暂存区的代码写入日志并提交到本地仓库:

$ git commit -m “(something)”

把所有本地仓库的提交,更新到远程仓库:

$ git push
git log命令:查看每次修改的日志文件。

git log与git reflog的区别,记得几点:git log是顺着当前分支往前去查找提交记录,而git reflog并不像git log去遍历提交历史,它都不是仓库的一部分,它不包含推送、更新或者克隆,而是作为本地提交记录的清单。简单理解:本地后悔药。

git reset命令:回退命令。

首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,上一个版本就是HEAD,上上一个版本就是HEAD,当然往上100个版本写100个比较容易数不过来,所以写成HEAD~100。

$ git reset --hard HEAD^
HEAD is now at ea34578 add distributed

回退add命令提交到缓存区的文件,并不会把文件恢复缓存区,需要区别(3)git checkout命令:

$ git reset HEAD

git checkout --命令:丢弃缓存区文件的修改,把文件恢复到git add之前的状态。

git diff HEAD --命令可以查看工作区和版本库里面最新版本的区别

git rm删除文件。

课程收获:
需要温习了很多git很多命令,克隆,同步,提交,打标签,切换分支,保存现场等,还认识了多人办公的提交流程,可以快捷的在项目中实践下,提高工作效率还有协同率,这样就算是人员流失,或者进入新的团队都可以很好的使用git flow啦

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消