2. Git进阶

2.1 分支

为了便于理解,大家暂时可以认为分支就是当前工作目录中代码的一份副本。

使用分支,可以让我们从开发主线上分离出来,以免影响开发主线。

2.1.1 分支细分

主分支(master):第一次向 git 仓库中提交更新记录时自动产生的一个分支。

、开发分支(develop):作为开发的分支,基于 master 分支创建。

功能分支(feature):作为开发具体功能的分支,基于开发分支创建

功能分支 -> 开发分支 -> 主分支

2.1.2 分支命令

git branch 查看分支 git branch 分支名称 创建分支 git checkout 分支名称 切换分支 git merge 来源分支 合并分支 (备注:必须在master分支上才能合并develop分支) git branch -d 分支名称 删除分支(分支被合并后才允许删除)(-D 强制删除)

2.2 暂时保存更改

在git中,可以暂时提取分支上所有的改动并存储,让开发人员得到一个干净的工作副本,临时转向其他工作。

使用场景:分支临时切换

存储临时改动:git stash 恢复改动:git stash pop

3. Github

在版本控制系统中,大约90%的操作都是在本地仓库中进行的:暂存,提交,查看状态或者历史记录等等。除此之外,如果仅仅只有你一个人在这个项目里工作,你永远没有机会需要设置一个远程仓库。

只有当你需要和你的开发团队共享数据时,设置一个远程仓库才有意义。你可以把它想象成一个 “文件管理服务器”,利用这个服务器可以与开发团队的其他成员进行数据交换。

3.1 注册

访问github首页,点击 Sign up 连接。(注册)

填写用户名、邮箱地址、GitHub登陆密码

选择计划

填写 GitHub 问题

验证邮箱

GitHub 个人中心

3.2 多人协作开发流程

A在自己的计算机中创建本地仓库 A在github中创建远程仓库 A将本地仓库推送到远程仓库 B克隆远程仓库到本地进行开发 B将本地仓库中开发的内容推送到远程仓库 A将远程仓库中的最新内容拉去到本地

3.3 创建仓库

填写仓库基本信息

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

git push https://github.com/teach-tian/ccc.git master

备注:如果远程仓库有内容,要先 git pull https://github.com/teach- tian/ccc.git master

git remote add origin https://github.com/teach-tian/ccc.git // git 添加远程仓库origin (origin是仓库别名) git push origin master git push -u origin master

-u 记住推送地址及分支,下次推送只需要输入git push即可

备注: 首先本地已经进行git初始化等一系列操作之后再进行推送命令:

git push -u -f origin master

强制上传覆盖远程文件

(这个命令在团队开发的时候最好不要用,否则可能会有生命危险)

同样可以尝试这句:(从远程仓库拉取内容,覆盖本地仓库)

git pull origin master --allow-unrelated-histories

注意: git 清除远程仓库地址等信息

git remote rm origin

git remote add origin git@github.com:teach-tian/2010a_fxs.git

3.4 拉取操作

3.4.1 克隆仓库

克隆远端数据仓库到本地:git clone 仓库地址

3.4.2 拉取远程仓库中最新的版本

拉取远程仓库中最新的版本:git pull 远程仓库地址 分支名称

3.4.3 如何邀请别人成为当前项目的开发者

邀请别人成为当前项目的开发者,别人就可以向公共仓库推送代码。

流程如下:

进入github仓库---> settings---->Manage access----->第一次添加会弹出密码输入框------>Invite a collaborator (输入你邀请的B程序员github账号)----> 发送邀请------>B程序员登陆邮箱接受邀请------B程序员可以向仓库推送代码

这将产生一个流程图。:

#mermaid-svg-oQyq3nxspXDzxdDC .label{font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family);fill:#333;color:#333}#mermaid-svg-oQyq3nxspXDzxdDC .label text{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .node rect,#mermaid-svg-oQyq3nxspXDzxdDC .node circle,#mermaid-svg-oQyq3nxspXDzxdDC .node ellipse,#mermaid-svg-oQyq3nxspXDzxdDC .node polygon,#mermaid-svg-oQyq3nxspXDzxdDC .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-oQyq3nxspXDzxdDC .node .label{text-align:center;fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .node.clickable{cursor:pointer}#mermaid-svg-oQyq3nxspXDzxdDC .arrowheadPath{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-oQyq3nxspXDzxdDC .flowchart-link{stroke:#333;fill:none}#mermaid-svg-oQyq3nxspXDzxdDC .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-oQyq3nxspXDzxdDC .edgeLabel rect{opacity:0.9}#mermaid-svg-oQyq3nxspXDzxdDC .edgeLabel span{color:#333}#mermaid-svg-oQyq3nxspXDzxdDC .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-oQyq3nxspXDzxdDC .cluster text{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-oQyq3nxspXDzxdDC .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-oQyq3nxspXDzxdDC text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-oQyq3nxspXDzxdDC .actor-line{stroke:grey}#mermaid-svg-oQyq3nxspXDzxdDC .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-oQyq3nxspXDzxdDC .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-oQyq3nxspXDzxdDC #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-oQyq3nxspXDzxdDC .sequenceNumber{fill:#fff}#mermaid-svg-oQyq3nxspXDzxdDC #sequencenumber{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC #crosshead path{fill:#333;stroke:#333}#mermaid-svg-oQyq3nxspXDzxdDC .messageText{fill:#333;stroke:#333}#mermaid-svg-oQyq3nxspXDzxdDC .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-oQyq3nxspXDzxdDC .labelText,#mermaid-svg-oQyq3nxspXDzxdDC .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-oQyq3nxspXDzxdDC .loopText,#mermaid-svg-oQyq3nxspXDzxdDC .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-oQyq3nxspXDzxdDC .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-oQyq3nxspXDzxdDC .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-oQyq3nxspXDzxdDC .noteText,#mermaid-svg-oQyq3nxspXDzxdDC .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-oQyq3nxspXDzxdDC .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-oQyq3nxspXDzxdDC .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-oQyq3nxspXDzxdDC .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-oQyq3nxspXDzxdDC .mermaid-main-font{font-family:“trebuchet ms”, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .section{stroke:none;opacity:0.2}#mermaid-svg-oQyq3nxspXDzxdDC .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-oQyq3nxspXDzxdDC .section2{fill:#fff400}#mermaid-svg-oQyq3nxspXDzxdDC .section1,#mermaid-svg-oQyq3nxspXDzxdDC .section3{fill:#fff;opacity:0.2}#mermaid-svg-oQyq3nxspXDzxdDC .sectionTitle0{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .sectionTitle1{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .sectionTitle2{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .sectionTitle3{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-oQyq3nxspXDzxdDC .grid .tick text{font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .grid path{stroke-width:0}#mermaid-svg-oQyq3nxspXDzxdDC .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-oQyq3nxspXDzxdDC .task{stroke-width:2}#mermaid-svg-oQyq3nxspXDzxdDC .taskText{text-anchor:middle;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .taskText:not([font-size]){font-size:11px}#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-oQyq3nxspXDzxdDC .task.clickable{cursor:pointer}#mermaid-svg-oQyq3nxspXDzxdDC .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-oQyq3nxspXDzxdDC .taskText0,#mermaid-svg-oQyq3nxspXDzxdDC .taskText1,#mermaid-svg-oQyq3nxspXDzxdDC .taskText2,#mermaid-svg-oQyq3nxspXDzxdDC .taskText3{fill:#fff}#mermaid-svg-oQyq3nxspXDzxdDC .task0,#mermaid-svg-oQyq3nxspXDzxdDC .task1,#mermaid-svg-oQyq3nxspXDzxdDC .task2,#mermaid-svg-oQyq3nxspXDzxdDC .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutside0,#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutside2{fill:#000}#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutside1,#mermaid-svg-oQyq3nxspXDzxdDC .taskTextOutside3{fill:#000}#mermaid-svg-oQyq3nxspXDzxdDC .active0,#mermaid-svg-oQyq3nxspXDzxdDC .active1,#mermaid-svg-oQyq3nxspXDzxdDC .active2,#mermaid-svg-oQyq3nxspXDzxdDC .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-oQyq3nxspXDzxdDC .activeText0,#mermaid-svg-oQyq3nxspXDzxdDC .activeText1,#mermaid-svg-oQyq3nxspXDzxdDC .activeText2,#mermaid-svg-oQyq3nxspXDzxdDC .activeText3{fill:#000 !important}#mermaid-svg-oQyq3nxspXDzxdDC .done0,#mermaid-svg-oQyq3nxspXDzxdDC .done1,#mermaid-svg-oQyq3nxspXDzxdDC .done2,#mermaid-svg-oQyq3nxspXDzxdDC .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-oQyq3nxspXDzxdDC .doneText0,#mermaid-svg-oQyq3nxspXDzxdDC .doneText1,#mermaid-svg-oQyq3nxspXDzxdDC .doneText2,#mermaid-svg-oQyq3nxspXDzxdDC .doneText3{fill:#000 !important}#mermaid-svg-oQyq3nxspXDzxdDC .crit0,#mermaid-svg-oQyq3nxspXDzxdDC .crit1,#mermaid-svg-oQyq3nxspXDzxdDC .crit2,#mermaid-svg-oQyq3nxspXDzxdDC .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-oQyq3nxspXDzxdDC .activeCrit0,#mermaid-svg-oQyq3nxspXDzxdDC .activeCrit1,#mermaid-svg-oQyq3nxspXDzxdDC .activeCrit2,#mermaid-svg-oQyq3nxspXDzxdDC .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-oQyq3nxspXDzxdDC .doneCrit0,#mermaid-svg-oQyq3nxspXDzxdDC .doneCrit1,#mermaid-svg-oQyq3nxspXDzxdDC .doneCrit2,#mermaid-svg-oQyq3nxspXDzxdDC .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-oQyq3nxspXDzxdDC .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-oQyq3nxspXDzxdDC .milestoneText{font-style:italic}#mermaid-svg-oQyq3nxspXDzxdDC .doneCritText0,#mermaid-svg-oQyq3nxspXDzxdDC .doneCritText1,#mermaid-svg-oQyq3nxspXDzxdDC .doneCritText2,#mermaid-svg-oQyq3nxspXDzxdDC .doneCritText3{fill:#000 !important}#mermaid-svg-oQyq3nxspXDzxdDC .activeCritText0,#mermaid-svg-oQyq3nxspXDzxdDC .activeCritText1,#mermaid-svg-oQyq3nxspXDzxdDC .activeCritText2,#mermaid-svg-oQyq3nxspXDzxdDC .activeCritText3{fill:#000 !important}#mermaid-svg-oQyq3nxspXDzxdDC .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC g.classGroup text{fill:#9370db;stroke:none;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family);font-size:10px}#mermaid-svg-oQyq3nxspXDzxdDC g.classGroup text .title{font-weight:bolder}#mermaid-svg-oQyq3nxspXDzxdDC g.clickable{cursor:pointer}#mermaid-svg-oQyq3nxspXDzxdDC g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-oQyq3nxspXDzxdDC g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-oQyq3nxspXDzxdDC .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-oQyq3nxspXDzxdDC .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-oQyq3nxspXDzxdDC .dashed-line{stroke-dasharray:3}#mermaid-svg-oQyq3nxspXDzxdDC #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC .commit-id,#mermaid-svg-oQyq3nxspXDzxdDC .commit-msg,#mermaid-svg-oQyq3nxspXDzxdDC .branch-label{fill:lightgrey;color:lightgrey;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .slice{font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-oQyq3nxspXDzxdDC g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-oQyq3nxspXDzxdDC g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-oQyq3nxspXDzxdDC g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-oQyq3nxspXDzxdDC .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-oQyq3nxspXDzxdDC .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-oQyq3nxspXDzxdDC .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-oQyq3nxspXDzxdDC .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-oQyq3nxspXDzxdDC .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-oQyq3nxspXDzxdDC .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-oQyq3nxspXDzxdDC .edgeLabel text{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:‘trebuchet ms’, verdana, arial;font-family:var(–mermaid-font-family)}#mermaid-svg-oQyq3nxspXDzxdDC .node circle.state-start{fill:black;stroke:black}#mermaid-svg-oQyq3nxspXDzxdDC .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-oQyq3nxspXDzxdDC #statediagram-barbEnd{fill:#9370db}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-state .divider{stroke:#9370db}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-oQyq3nxspXDzxdDC .note-edge{stroke-dasharray:5}#mermaid-svg-oQyq3nxspXDzxdDC .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{–mermaid-font-family: ‘“trebuchet ms”, verdana, arial’;–mermaid-font-family: “Comic Sans MS”, “Comic Sans”, cursive}#mermaid-svg-oQyq3nxspXDzxdDC .error-icon{fill:#522}#mermaid-svg-oQyq3nxspXDzxdDC .error-text{fill:#522;stroke:#522}#mermaid-svg-oQyq3nxspXDzxdDC .edge-thickness-normal{stroke-width:2px}#mermaid-svg-oQyq3nxspXDzxdDC .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-oQyq3nxspXDzxdDC .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-oQyq3nxspXDzxdDC .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-oQyq3nxspXDzxdDC .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-oQyq3nxspXDzxdDC .marker{fill:#333}#mermaid-svg-oQyq3nxspXDzxdDC .marker.cross{stroke:#333} :root { --mermaid-font-family: “trebuchet ms”, verdana, arial;} #mermaid-svg-oQyq3nxspXDzxdDC { color: rgba(0, 0, 0, 0.75); font: ; }

进入github仓库

点击settings

选择Manage access

Invite a collaborator 输入对账号或邮箱发送邀请

对方登陆邮箱点击接受邀请

B程序员可以向仓库推送代码

3.5 解决冲突

在多人同时开发一个项目时,如果两个人修改了同一个文件的同一个地方,就会发生冲突。冲突需要人为解决。

3.6 跨团队协作

即使你不是团队成员,也可以向别人的仓库贡献代码。

程序员 C fork仓库 程序员 C 将仓库克隆在本地进行修改 程序员 C 将仓库推送到远程 (git push 远程仓库地址 master) 程序员 C 发起pull reqest

点击pull requests—>点击 new pull request-–>create pull request-—>输入推送描述信息–>create pull request

原仓库作者审核 (与提交者对话) 原仓库作者合并代码 (merge pull request)

3.7 ssh免登陆

https协议仓库地址格式:https://github.com/itcast-frontEnd/git-demo.git

每次用https协议的地址进行git push git pull操作时都需要输入github账号密码进行身份验证。所有我们有了ssh协议,可以免登陆操作。

生成秘钥:ssh-keygen

秘钥存储目录:C:\Users\用户\.ssh

公钥名称:id_rsa.pub (放到github服务器中)

私钥名称:id_rsa (放在自己电脑上)

mac电脑:

本文选择默认的安装路径,故想要找到ssh文件夹下的id_rsa.pub文件,只需要在终端中输入:

open ~/.ssh

就会在桌面上自动弹出ssh文件,再选择id_rsa.pub文件,用编辑器打开,复制都GitHub上即可。

添加远程仓库,起别名:origin_ssh

git remote add origin_ssh git@github.com:teach-tian/ccc.git

向远程仓库origin_ssh推送,无需密码。

git push origin_ssh master

3.8 GIT忽略清单

将不需要被git管理的文件名字添加到此文件中,在执行git命令的时候,git就会忽略这些文件。

git忽略清单文件名称:.gitignore

内容为:

dependencies npm包文件

/node_modules/

过滤所有.zip文件

*.zip

过滤某个具体文件

/cc/a.css

production 打包文件

/build/

将工作目录中的文件全部添加到暂存区:git add .

3.9 为仓库添加详细的说明

创建 README.md(使用markdow 语法)

4. Linux 命令:

ls 查看文件/目录 pwd 显示当前的工作目录 cd 进入目录

[例子]:

cd 回到注册进入时的目录

cd /tmp 进入 /tmp 目录

cd …/ 进入上级目录

mkdir 创建目录 rmdir dirname //删除空目录 rm -d dirname //删除空目录 rm -r dirname // 要删除非空目录 cat 显示文件至标准输出

7.cp 拷贝

例子

cp fi le1 file2 将文件 file1 拷贝到文件 file2

mv 移动

i 在覆盖已存在文件时作提示,若回答 y 则覆盖,其他则中止

[例子]:

mv file1 file2 将文件 file1 改名为 file2

mv file1 file2 /tmp 将文件 file1 和文件 file2 移动到目录 /tmp 下

touch 创建文件 vi 编辑

i 插入 编辑内容

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(资料价值较高,非无偿)

最后

一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。

分享一些简单的前端面试题以及学习路线给大家,狂戳这里即可获取!!!

[外链图片转存中…(img-Zr3HrIm3-1711662867075)]

[外链图片转存中…(img-qsUS0Yga-1711662867076)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

[外链图片转存中…(img-F5h4pcGl-1711662867076)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(资料价值较高,非无偿)

最后

一个好的心态和一个坚持的心很重要,很多冲着高薪的人想学习前端,但是能学到最后的没有几个,遇到困难就放弃了,这种人到处都是,就是因为有的东西难,所以他的回报才很大,我们评判一个前端开发者是什么水平,就是他解决问题的能力有多强。

分享一些简单的前端面试题以及学习路线给大家,狂戳这里即可获取!!!

[外链图片转存中…(img-T8asTWyU-1711662867076)]

精彩内容

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: