git基础

知识点、git工作区(Working Directory)、版本库(Repository)

工作区:本地文件目录
版本库:本地文件目录中的.git目录(为隐藏目录)

版本库里有暂存区(stage或者叫index),第一个分支(master,Git为我们自动创建的),HEAD(指向master的一个指针)

GitHub或其他网站上免费托管的Git仓库,有可能是公开的,所以,不要把敏感信息放进去。

安装后,运行如下命令进行设置,设置提交时的“提交人信息”
$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"
--global参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。

以下流程,常规情况下,只需看1、2...等标题的第一行内容

一、常用流程

1、git init,把当前目录变成Git可以管理的仓库,运行此命令后当前目录下多了一个.git的目录
语法:$ git init
运行后,会显示在某个文件夹下初始化了一个git仓库。

2、git add,就是把文件修改添加到暂存区
语法:$ git add 文件名,或$ git add 文件名 文件名...
命令运行后,如果没有任何显示,说明添加成功。添加成功后,文件进入了暂存区(stage或者叫index),但依然是在本地硬盘。
修改或添加了文件后,没有add前,如果运行git status命令,会显示:no changes added to commit (use "git add" and/or "git commit -a"),会显示某某文件被修改了(modified),某某文件没有被添加(即Untracked)。

3、git commit,就是把暂存区的所有内容提交到当前分支
语法:$ git commit -m "备注信息"
命令运行后,会显示几个文件被改动,插入了几行内容等消息。此时文件进入了分支(默认master),但依然是在本地硬盘
add之后,commit之前, git status会显示,在某个分支上,某些修改将要提交,显示新文件,修改的文件等消息。
一旦提交后,如果你又没有对工作区做任何修改,那么工作区就是“干净”的:nothing to commit (working directory clean)

4、在github或码云等网站上设立远程仓库(空仓库,没有任何文件)

5、git remote add, 本地仓库与远程仓库关联
语法:$ git remote add origin 远程仓库地址
origin,是Git默认的叫法,即将“远程仓库地址”简称为origin
命令运行后,没有任何显示,表示成功

6、 git push,第一次把本地库的所有内容推送到远程库上(空仓库,没有任何文件)
语法:$ git push -u origin master
注:上述命令是把当前分支master推送到远程。由于远程库是空的,第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送到远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。
命令运行后,会显示有多少个objects,写入多少个objects,分支master与远程的master进行了关联等等消息。

7、 git push,平常时,把本地库的所有内容推送到远程库上
语法:$ git push origin master
命令运行后,会显示有多少个objects,写入多少个objects,master->master等消息,但不再显示分支master与远程的master进行了关联消息。

8、如果先建立远程仓库(非空仓库,可能有文件)

9、git clone:从远程库克隆clone到本地
语法:$ git clone 远程项目地址
命令运行后,会显示远程有多少个objects,unpacking多少个objects等消息,同时在当前文件夹下生成新的文件夹,新文件夹名字为远程仓库中的项目名字。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章