git
git配置
首先是查看配置
git config -l 查看所有的设置
git config --system --list 查看git系统设置
git config --global --list 查看用户的设置
git两种配置方式
命令行配置和文件配置是等效的,命令行配置本质就是操作文件在配置git。
通过配置文件配置
- git安装目录下的gitconfig文件,是系统级的文件,--system
- C盘当前用户目录下的配置文件,--global 配置
通过命令配置
git config --global user.name "cv9527cv" # 名称
git config --global user.email 12345678@qq.com # 邮箱
以上两个名称和邮箱必须配置,否则代码提交不上去。
git基本理论(核心)
git本地有三个工作区域:工作目录(Working Directory)、暂存区(Stage/Index)、资源库(Repository或Git Directory)。如果再加上远程的git仓库(Remote Directory)就可以分为四个工作区域,转换关系如下:
Workspace:工作区,就是你平时存放项目代码的地方。
Index/Stage: 暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件信息列表。
Repository: 仓库区(或本地仓库),就是安全存放数据的位置,这里有你提交到所有版本的数据,其中HEAD指向最新放入仓库的版本。
Remote:远程仓库,托管代码的服务器。
实际工作中只关心WorkSpace和Remote。
.git:存放git管理信息的目录,初始化仓库的时候自动创建。
Local Repo:本地仓库,一个存放在本地的版本库;HEAD是当前的开发分支(Branch)。
Stash:隐藏,是一个工作状态保存栈,用于保存/恢复WorkSpace中的临时状态。
工作流程
git项目创建
创建工作目录与常用的指令
WorkSpace(工作目录)一般就是你希望git帮你管理的文件夹,可以是你项目的目录,也可以是一个空目录,建议不要有中文。
日常使用只要记住以下六个命令:
创建本地仓库的方法有两种:一种是创建全新的仓库;另一种是克隆远程仓库。
-
创建全新的仓库,在项目目录下执行:
git init # 在当前目录创建一个Git代码库。
-
克隆远程仓库,就是将远程服务器上的仓库完全镜像一份至本地:
git clone [url] # 克隆一个项目和它整个代码历史(版本信息)
git文件操作
好累啊,偷个懒。
查看文件状态:
git status [文件名] # 查看指定文件状态
git status # 查看所有文件状态
实例:
# git add . 添加所有文件到暂存区
# git commit -m "内容" 提交暂存区中内容到本地仓库 -m 提交信息
忽略文件
.gitignore文件实例:
实践
-
注册gitlab/gittee/github,完善个人信息。
-
设置本机绑定SSH公钥,实现免密码登录!
ssh-keygen -t rsa
在本地用户目录下有生成一个 .ssh文件夹。
-
将id_rsa.pub文件内容复制到gitlab/gittee/github的SSHkeys中。
git分支
git其他命令
git remote -v #显示所有的远程仓库
git remote add [shortname] [url] # 添加远程版本库,shortname 为本地的版本库
比如:
git remote add origin git@github.com:tianqixin/runoob-git-test.git
git push -u origin master
其他相关命令:
git remote rm name # 删除远程仓库
git remote rename old_name new_name # 修改仓库名
git同步版本库一定是手工操作的,对应的命令就是fetch(本地同步远程)和push(远程同步本地)。
所以,你想要看到远程分支,必须使用git fetch获取远程更新之后再看。
Make sure you use a capitol D in the command, in this case you would type git branch -D <branch_name>. Note that this will only delete the branch from your local computer。
If you are trying to delete a remote branch, type git push origin :<branch_name> (remember to add the colon)