首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

项目经理必须懂的git技能

编辑器 & Mac

1、编辑器的使用

vs code

git 辅助工具,可查看代码的书写者:

GitBlame

2、 Mac工具使用

强大终端: item2

3、在 macOS 中完美配置文件名大小写敏感(解决git默认对大小写不敏感问题)解决git大小写不敏感。

git 使用

一般企业中使用代码管理工具Git开发时都是通过拉分支进行功能细致开发,所以掌握git的分支操作时必要的。

使用git下载指定分支命令为:

git clone-b分支名仓库地址

初始开发git操作流程:

本地创建公钥:

ssh-keygen-t rsa-C"邮箱"

并配置

克隆最新主分支项目代码:

git clone地址

创建本地分支:

git branch分支名

查看本地分支:

git branch

查看远程分支:

git branch-a

切换分支:

git checkout分支名

(一般修改未提交则无法切换,大小写问题经常会有,可强制切换

git checkout分支名-f

非必须慎用)

将本地分支推送到远程分支:

git push:

必备知识点

概念:

Remote:远程主仓库

Repository:本地仓库

Index:Git追踪树,暂存区

workspace:本地工作区(即你编辑器的代码)

一般操作流程:《工作区》->

git status

查看状态 ->

git add.

将所有修改加入暂存区->

git commit-m"提交描述"

将代码提交到本地仓库->

git push

将本地仓库代码更新到远程仓库。

一、git remote

为远程仓库指定别名,以便于管理远程主机,默认只有一个时为origin。

1、查看主机名:

git remote

2、查看主机名即网址:

git remote-v

默认克隆远程仓库到本地时,远程主机为origin,如需指定别名可使用

git clone-o

3、查看主机的详细信息:

git remote show

4、添加远程主机:

git remote add

5、删除远程主机:

git remote rm

6、修改远程主机的别名:

git remote rename

二、git fetch

将某个远程主机的更新,全部/分支 取回本地(此时之更新了Repository)它取回的代码对你本地的开发代码没有影响,如需彻底更新需合并或使用

git pull

远程主机的更新,全部取回本地:

git fetch

将远程仓库特定分支更新到本地:

git fetch

如果需要将更新拉取但本地工作代码需要合并到本地某一分支:

git merge

,或者在此基础上创建出新分支并切换:

git checkout-b

三、git pull

拉取远程主机某分支的更新,再与本地的指定分支合并(相当与fetch加上了合并分支功能的操作)。

拉取远程某分支并与本地某一分支合并(没有则默认会创建):

git pull:

如果远程分支是与当前所在分支合并,则冒号后面的部分可以省略:

git pull

如果当前分支与远程分支存在追踪关系,则可以省略远程分支名:

git pull

如果当前分支只有一个追踪分支,则远程主机名都可以省略:

git pull

四、git push

将本地分支的更新,推送到远程主机,其命令格式与

git pull

相似。

1、将本地分支推送到远程分支:

git push:

2、如果省略远程分支名,则默认为将本地分支推送到与之关联的远程分支:(一般设置本地分支和与之关联的远程分支同名,防止混淆)

git push

如果对应的远程分支不存在,则会被创建(m默认与本地分支同名)。

3、如果省略本地分支名,则表示删除指定的远程分支,这等同于推送一个空的本地分支到对应远程分支:

git push origin:

等同于

git push origin--delete

4、如果当前分支与远程分支之间存在追踪关系,则本地分支和远程分支都可以省略

git push origin

5、如果当前分支只有一个追踪分支,那么主机名也可以省略:

git push

6、如果当前分支与多个主机存在追踪关系(使用场景相对来说较少),可以使用

-u

指定默认推送主机:

git push-u origin

,设置时候需推送便可以直接使用

git push

7、将本地的所有分支都推送到远程主机:

git push--all origin

8、如果远程主机的版本比本地版本更新,推送时Git会报错,要求先在本地做

git pull

合并差异,然后再推送到远程主机。如果一定要推送,可以使用

--force

选项(谨慎使用,除非你非常确认):

git push--force origin

注意:分支推送顺序的格式为:,所以

git pull

格式::

git push

格式为::

五、分支操作

1、创建本地分支:

git branch test

:(创建名为test的本地分支)。

2、切换分支:

git checkout test

:(切换到test分支)。

3、创建并切换分支

git branch-b test

:(相当于以上两条命令的合并)。

4、查看本地分支:

git branch

5、查看远程仓库所有分支:

git branch-a

6、删除本地分支:

git branch-d test

:(删除本地test分支)。

7、分支合并:

git merge master

:(将master分支合并到当前分支)。

8、本地分支重命名:

git branch-m oldName newName

9、远程分支重命名:

重命名远程分支对应的本地分支:

git branch-m oldName newName

;

删除远程分支:

git push--deleteorigin oldName

;

上传新命名的本地分支:

git push origin newName

;

把修改后的本地分支与远程分支关联:

git branch--set-upstream-to origin/newName

10、分支关联:

查看当前的本地分支与远程分支的关联关系:

git branch-vv

把当前本地分支与远程origin的某分支进行关联处理(通过 --set-upstream-to 命令):

git branch--set-upstream-to=origin/feature/clear-server-eslint-error_180713

11、分支差异查看:

查看本地当前分支与远程某一分支的差异:

git diff origin/feature/reserve-3.4

查看本地特定分支与远程分支的差异:

git diff master origin/feature/reserve-3.4

(查看本地master分支与远程feature/reserve-3.4分支的差异),如图:

六、修改撤销

1、

git checkout--

:丢弃工作区的修改,就是让这个文件回到最近一次

git commit

git add

时的状态。

2、

git reset HEAD

:把暂存区的修改撤销掉(unstage),重新放回工作区。

3、

git reset--hard commit_id

:git版本回退,回退到特定的commit_id版本。

流程:

git log

查看提交历史,以便确定要回退到哪个版本(commit 之后的即为ID)。

4、

git reset--hard commit_id

:回退到commit_id版本。

5、

git reflog

查看命令历史,以便确定要回到未来的哪个版本。更新远程代码到本地:

git fetch origin master(分支)

git pull// 将fetch下来的代码pull到本地

git diff master origin/master// 查看本地分支代码和远程仓库的差异

6、拉取远程分支并创建本地分支:

git checkout-b本地分支名origin/远程分支名

:使用此方式会在本地新建分支,并自动切换到该本地分支;

git fetch origin远程分支名:本地分支名

:使用此方式会在本地新建分支,但是不会自动切换到该本地分支,需要手动checkout。

七、配置

1、

git config-l

// 陈列出所有的git配置项。

2、

git config core.ignorecasefalse

//配置git不忽略大小写(默认忽略)参照(git 大小写)。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180802A0A3LL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券