Workspace : 工作区,就是你平时存放项目代码的地方
Index / Stage : 暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
Repository : 仓库区(或版本库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
Remote : 远程仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
一、安装
从源中安装:
1 sudo apt-get update # 获得最近的软件包的列表 2 sudo apt-get install git
测试是否安装成功:
git --version
二、使用
查看当前分支状态
git status
查看当前的远程端
git remote
查看本地分支
git branch
查看本地和远程分支
git branch -a
创建新的分支xxx
git branch xxx
删除分支xxx
git branch -d xxx
切换到分支xxx
git checkout xxx
合并分支xxx到当前分支
git merge xxx
把文件的改动增加到我们的新版本的缓存中(还没提交新版本)
git add
取消之前 git add 添加了但不希望包含在下一提交快照中的缓存
git reset
git reset HEAD
将文件从缓存区移除,同时硬盘里的对应文件也会删除
git rm file
------------------------------------------------------------------------
初始化一个版本仓库
git init
克隆远端仓库到本地
git clone
从远程仓库把代码取下来,将其他人的代码提交的代码同步到本地
git pull
git pull [远程仓库名] [分支名] # 后面两个不写默认是origin master
把文件的改动增加到我们的新版本的缓存中(还没提交新版本)
git add
git add . # .代表当前目录下所有文件
提交/增加一个新版本
git commit -m 'xxx'
将本地代码推送到远程仓库
git push git push -u origin master # 如果是第一次提交 git push origin develop # 如果是提交分支
三、示例
git将本地项目提交到远程仓库
1、进入项目文件夹,通过命令git init将项目初始化成git本地仓库
git init
2、将项目内所有文件都添加到暂存区
git add .
3、对本次的提交进行备注,以便后期版本回退等操作
git commit -m 'xxx' # xxx是本次提交备注的内容
4、在github上新建一个仓库,复制仓库地址,然后使用命令将本地仓库与远程仓库建立连接
git remote add origin xxx # xxx是git仓库的地址
fatal: 远程 origin 已经存在
此时只需要将远程配置删除,重新添加即可
git remote rm origin git remote add origin xxx
再次提交文件即可正常使用
5、将暂存区的文件推送至远程仓库(使用强制推送'-f'是因为一般新建仓库的时候会生成read me文件,导致需要先git fetch才能推送,但这个read me文件其实是不需要的,因为在生成本地项目的时候一般也会生成一个read me文件,所以选择直接强制推送过去。)
git push origin master -f Username for 'http:/IP:Port': NAME Password for 'http://NAME@IP:Port': PASSWORD
fatal: unable to access 'https://XXX/***/???.git/': Empty reply from server
只需要先commit 在 push即可
四、option
reset
git reset --hard HEAD^ 工作区、暂存区、仓库区 git reset [--mixed] HEAD^ 暂存区、仓库区 git reset --soft HEAD^ 仓库区
diff
git diff 工作区、暂存区 git diff --cached 暂存区、本地仓库区 git diff HEAD 工作区、本地仓库区
status
git status -s