Git 的使用

关联本地和远程仓库1.安装git

先安装homebrew,然后通过homebrew安装git。

git中clone项目有两种方式:https和ssh

https:不管是谁,拿到url随便clone,但是在push的时候需要验证用户名和密码。

ssh:clone项目你必须是拥有者或者管理员,而且需要在clone前添加SSH Key。SSH在push的时候,是不需要输入用户名的,如果配置SSH Key的时候设置了密码,则需要输入密码,否则是不需要输入密码的。

git中使用SSH Key的步骤:

1.检查电脑是否存在SSH Key

如果存在idrsa.pub或iddsa.pub文件,说明文件已经存在,跳过创建SSH Key步骤

2.创建SSH Key

3.查看SSH Key

4.将查看的SSH Key赋值到git中设置好。

5.测试SSH Key

出现 "Welcome to xxx" 就可以了。

2.新建本地仓库

3.推送到远程仓库

在github上新建一个空的仓库,默认设置。

github告诉我们可以从这个仓库克隆出新的仓库,也可以把已有的本地仓库与之关联,然后把本地仓库的内容推送到github仓库上。

在执行如下操作会遇到点小问题:

这样是因为:空仓库不能提交上去(给项目添加文件),执行如下命令即可解决。

分支管理

1.分支管理策略

master分支:稳定、仅用来发布新版本,平时不能在上面干活

dev分支:不稳定、干活的地方,发布新版本时合并到master上

个人开发的分支:每个人都有自己的分支,最终要往dev上合并

合并分支时加上 参数可使用普通模式合并,合并后的历史有分支,能看出来曾经做过合并;

而fast forward合并就看不出来曾经做过合并。

2.bug分支

但当前工作区任务还未完成又要改bug的时候使用。

3.feature分支

为新功能创建分支:

4.多人协作

查看远程库的信息。

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

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

bug 分支只用于在本地修复bug,就没必要推到远程了。

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

关联远程dev分支到本地,即创建本地dev分支:

dev和origin/dev的连接:

工作模式:

试图用git push origin branch-name推送自己的修改

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

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

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

如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令:

标签管理

找到历史提交的commit id打标签:

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

git tag v1.0 commi-id

代码管理1.工作区与暂存区

工作区 work

暂存区 index/stage

2.管理修改

git比其他版本控制系统优秀的原因是git跟踪并管理的是修改,而非文件。

3.提交修改

代码回滚

忽略文件

忽略文件的原则:

忽略操作系统自动生成的文件,比如缩略图

忽略编译生成的中间文件、可执行文件等,也就是如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库

忽略你自己的带有敏感信息的配置文件,比如存放口令的配置文件

比如忽略所有js文件的规则:*.js

在线自动生成忽略文件:https://github.com/github/gitignore

忽略已经被追踪的文件:

更新.gitignore忽略掉目标文件:

或者:

参考资料:按难易程度排序

https://rogerdudler.github.io/git-guide/index.zh.html git - 简明指南

https://marklodato.github.io/visual-git-guide/index-zh-cn.html 图解git

https://try.github.io/levels/1/challenges/1 git在线练习

https://git-scm.com/book/zh/v2 git必看 git入门和进深

https://segmentfault.com/q/1010000000358588 github相关资料推荐

https://git-scm.com/docs/ git官方文档

前端教程

关注即可习得新技能

觉得本文对你有帮助?请分享给更多人。

关注「程序员宝库」公众号,直接获取各种编程资料!

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180205A13ZTD00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券