git 的介绍

git的3个程序:

  • Git Bash:Unix与Linux风格的命令行,使用最多
  • Git CMD:Windows风格的命令行
  • Git GUI:图形界面的Git

Git的4个工作区:

3个本地工作区,分别是工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory) 和 1个远程仓库(Remote Directory)。文件在这四个区域之间的转换关系如下:

  •  Workspace:工作区,平时存放项目代码的地方
  • Stage(Index):暂存区,用于临时存放改动后的文件
  • Repository(History):本地仓库,这里有你提交的所有版本的数据,其中,HEAD指向最新放入仓库的版本
  • Remote:远程仓库,托管代码的服务器

 本地的三个区域确切的说应该是git仓库中指向的版本:

 

  • Directory:使用Git管理的一个目录,也就是一个仓库,包含我们的工作空间和Git的管理空间。
  • WorkSpace:需要通过Git进行版本控制的目录和文件,这些目录和文件组成了工作空间。
  • .git:存放Git管理信息的目录,初始化仓库的时候自动创建。
  • Index/Stage:暂存区,或者叫待提交更新区,在提交进入repo之前,我们可以把所有的更新放在暂存区。
  • Local Repo:本地仓库,一个存放在本地的版本库;HEAD会只是当前的开发分支(branch)。
  • Stash:隐藏,是一个工作状态保存栈,用于保存/恢复WorkSpace中的临时状态。

 git工作流程:

  1. 在工作目录中添加、修改文件
  2. 将需要进行版本管理的文件放入暂存区域
  3. 将暂存区的文件提交到本地仓库。
  4. 提交本地仓库数据到远程仓库

 Git项目搭建:

创建本地仓库的方法有两种:一种是创建全新的仓库,另一种是克隆远程仓库

本地仓库搭建:

  1. 创建全新的仓库,需要用Git管理的项目的根目录执行代码:git init
  2. 执行完后,仅仅在项目目录中多出一个.git目录,关于版本等所有信息都在这个目录里面。
  • #注意,只有把隐藏文件打开,才能看到.git文件的

 

 

克隆远程仓库:

 1、将远程服务器上的仓库克隆到本地的代码:git clone [url]    #  http://github.com/elunez/eladmin.git

 

 

Git文件操作

 文件的4种状态

  • Untracked:未跟踪
  • Unmodefy:文件已经入库
  • Unmodefy:文件已修改
  • Staged:暂存状态

查看文件状态

  • 查看指定文件状态:git status [filename]
  • 查看所有文件状态:git status

添加所有文件到暂存区:git add .

提交暂存区中的内容到本地仓库:git commit -m "消息内容"

忽略文件

在主目录下创建“ .gitignore”文件,此文件有如下规则:

  • 忽略文件中的空行或以井号(#)开始的行将会被忽略。
  • 可以使用Linux通配符。例如:星号(*)代表任意多个字符,问好(?)代表一个字符,方括号([])代表可选字符范围,大括号({string1,string2})代表可选的字符串。
  • 如果名称的最前面有一个感叹号(!),表示例外规则,将不被忽略。
  • 如果名称的最前面是一个路径分隔符(/),表示要忽略的文件在此目录下,而子目录中的文件不忽略。
  • 如果名称的最后面是一个路径分隔符(/),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略)
1 #为注释
2 *.txt          #忽略所有 .txt文件,这样的话上传就不会被选中!
3 !lib.txt      #但 lib.txt 除外
4 /temp          #仅忽略项目根目录下的temp ,不包括其他目录temp
5 build/         #忽略build/目录下的所有文件
6 doc/*/txt      #会忽略doc/notes.txt ,但不包括doc/server/a.txt

 git分支

如果同一个文件在合并分支时都被修改了则会引起冲突:解决的办法是我们可以修改冲突文件后重新提交!选择要保留他的代码还是你的代码!

master主分支应该非常稳定,用来发布新版本,一般情况下不允许在上面工作,工作一般情况下在新建的dev分支上工作,工作完后,比如上要发布,或者说dev分支代码稳定后可以合并到主分支master上来。

 

 git分支中常用到指令

 1 #列出所有本地分支
 2 git branch
 3 
 4 #列出所有远程分支
 5 git branch -r
 6 
 7 #新建一个分支,但依然停留在当前分支
 8 git branch [branch-name]
 9 
10 #新建一个分支,并切换到该分支
11 git checkout -b [branch]
12 
13 #合并指定分支到当前分支
14 git merge [branch]
15 
16 #删除分支
17 git branch -d [branch -name]
18 
19 #删除远程分支
20 git push origin --delete [branch-name]
21 git branch -dr [remote/branch]
posted @ 2020-05-24 09:35  codeing123  阅读(256)  评论(0编辑  收藏  举报