Git安装使用

一、Git说明

  • 一个开源的分布式版本控制系统
  • 可以有效、告诉地处理小到大项目版本管理

二、Git工作流

  • workspace,自己电脑的工作区,自己编码开发的地方
  • Repositoty,本地仓库,本地的一个提交暂存区
  • Remote,远程仓库,存放最终的代码

正常的工作流,刚进到一个公司,已经有在开发的项目了。
1、远程仓库clone下载到本地仓库。
2、checkout检出到本地工作空间。
3、本地编辑/新建后,add添加。
4、commit提交到本地仓库。
5、push到远程仓库。
6、之后每天开发前先pull把别人代码下载下来,才能开始开发避免冲突。

如果为新建项目,需要提交到远程仓库。
1、工程目录init创建新的本地仓库(隐藏的文件夹.git),此时工作空间和本地仓库联系就有了。
2、git remote add链接远程仓库,此时本地仓库和远程仓库联系就有了。
3、本地编辑/新建后,add添加。
4、commit提交到本地仓库。
5、push到远程仓库,此时需要注意,直接push会报错:当前分支与远程分支没有建立关联(初次提交),需要指定仓库名和分支。

三、Git下载安装
官网下载对应版本,然后进行安装(除了可以改下安装路径,路径不要有中文,其他直接默认下一步即可)。

四、gitHub
gitHub是一个开源库,一个面向开源及私有软件项目的托管平台,可以在上面建立自己的远程仓库,可以把自己的代码分享给别人。
登陆gitHub官网,注册一个账户并登陆。
点击右上角的加号+——New Repositoty,新建一个远程仓库。(2019.01.07,GitHub个人可以免费创建私有仓库了,并且数量无限制,免费的私有仓库同时最多只能有三个协作)


远程仓库创建完成,主要记住此地址。

五、Git基本操作
Git会把所有文件以及历史记录直接记录成一个文件夹保存在你的项目中,即隐藏的文件夹.git。
鼠标右键,会多出两个选项。


Git Bash Here,在当前位置打开Git的命令行窗口。

0、配置
配置用户名和邮箱。

  • git config --global user.name 'gitHub用户名',配置用户名(无报错即成功)。
  • git config --global user.email 'gitHub邮箱',配置邮箱(无报错即成功)。

git就能记录下是谁做的动作了,该配置会在github主页上显示谁提交了该文件。

1、clone远程仓库

  • git clone '创建远程仓库成功后显示的地址',clone远程仓库(空仓库会有警告略过),此时当前位置就会克隆下载下来一个远程仓库文件夹。

(“origin”仓库名是运行git clone时默认的远程仓库名字。 如果运行git clone -o booyah,那么你默认的远程分支名字将会是 booyah/master。)

2、add添加
Git有个概念叫“暂存区“,包含所有你可能会提交的变动。它一开始是空的,可以通过 git add 命令添加内容,最后最终使用 git commit 提交(创建一个快照)到本地仓库。

  • 可以使用vscode打开此文件夹,然后新建一个空文件做测试。


  • Git的命令行窗口中进入到此文件夹目录。


  • git add 文件名称,进行文件添加(无报错即成功),git add .即为添加全部到暂存区。

3、commit提交到本地仓库

  • git commit -m '提交信息',直接把现在修改添加过的东西都进行提交。

到目前为止,我们的操作都是在本地的——只存在于.git文件中。

4、push推送

  • git push (远程仓库名字) (分支名字),本地仓库内容推送到远程仓库上去(首次需要用户名密码登陆)。
  • 推送到远程仓库成功,提交到了master分支。


  • 此时自己gitHub上就会有此文件。


注意:一开始直接clone项目下来,会默认了:远程仓库名origin,分支名master,可以不指定;如果是新建项目初始化要提交/链接了多个远程仓库,远程仓库多,且分支较多,则需要指定,否则Git就会产生疑问,因为它无法判断你的push目标。

5、pull拉取

  • git pull (远程仓库名字) (分支名字),从远程仓库把代码拉取下来。通常是开发时避免代码冲突,在编辑代码前都要做一下此操作,同步别人的代码,避免后面冲突。
  • 作为测试,可以直接在gitHub上编辑文件后进行此操作。



注意:多个远程仓库时需要指定仓库名和分支名。

6、checkout检出

  • 作用1,检出分支,如果有多个分支可以检出不同分支。


  • 作用2,本地工作空间还原文件(误删或已修改的),从本地仓库重新checkout。




7、init创建新的本地仓库
如果不是gitHub上已有项目,而是本地新建了项目需要上传到gitHub上,则需要先创建一个新的本地仓库。

  • 首先要去到项目路径下,执行git init,这时Git会创建一个隐藏的文件夹.git,所有的历史和配置信息都储存在其中;默认创建master分支。

几乎每一个仓库都有 master 分支,这一步默认创建。

8、git remote add链接远程仓库
为了能够上传到远程仓库,我们需要先建立起链接;可以链接多个远程仓库。

  • git remote add 名字 远程仓库地址,一个项目可以同时拥有好几个远程仓库,为了区分通常会起不同的名字。通常主要的远程仓库被称为origin。

说明:远程仓库名字 “origin” 与分支名字 “master” 一样,在 Git 中并没有任何特别的含义。
“origin” 是当你运行git clone时默认的远程仓库名字。 如果你运行 git clone -o booyah,那么你默认的远程分支名字将会是 booyah/master。
程仓库是指托管在网络上的项目仓库,可能会有好多个,会push到不同仓库上,取个名字方便点。

9、git remote列出已经存在的远程分支
可以用git remote命令,它会列出每个远程库的简短名字。


git remote -v列出详细信息,在每一个名字后面列出其远程url。

10、git remote rm删除远程仓库链接
git remote rm 远程仓库名
11、查看所有文件状态
git status
Untracked files:未被操作过的文件;Changes to be committed:在暂存区未提交的文件;On branch master nothing to commit, working tree clean:在master分支上,没有需要提交的,可进行推送。

六、vscode使用git

  • clone远程仓库下来以后,vscode打开远程仓库文件夹。

  • 对此文件夹的操作都会在vscode的源代码管理器中显示。修改test.js,新增一个test.html。


  • 暂存更改,点击文件的加号,即进行了add添加。


  • 提交,点击勾,即进行了commit操作,把暂存更改的文件进行了提交,需要输入提交信息。


  • 提交后源代码管理器中此提交的文件即消失,已完成了操作。


  • 推送,选择更多(三个点),点击推送,即进行了push推送。


  • 创建 .gitignore 文件,可以定义git 需要忽略文件。
node_modules
.idea
.vscode
.git
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,905评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,140评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,791评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,483评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,476评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,516评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,905评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,560评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,778评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,557评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,635评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,338评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,925评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,898评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,142评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,818评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,347评论 2 342

推荐阅读更多精彩内容

  • Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不 需要...
    谢谢是我阅读 520评论 0 1
  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 13,626评论 9 163
  • (预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料) 一:Git是什么? Git是目前世界上最先进的...
    axiaochao阅读 1,921评论 1 8
  • 查看、添加、提交、删除、找回,重置修改文件 git help # 显示command的help git sho...
    Swiftor阅读 2,086评论 0 2
  • git 使用笔记 git原理: 文件(blob)对象,树(tree)对象,提交(commit)对象 tree对象 ...
    神刀阅读 3,756评论 0 10