一、介绍
Git和SVN最主要区别
- SVN是集中式版本控制系统。版本库存于中央服务器,工作时,从服务器中拉取,完成代码后,推送到服务器。必须联网才能操作。
- Git是分布式版本控制系统。版本都在自己的电脑上。
二、下载安装
- Git官网下载:https://www.git-scm.com/download/win
- 淘宝镜像下载:http://npm.taobao.org/mirrors/git-for-windows/
环境变量只是为了全局使用。
三、基本的linux命令介绍
- cd:改变目录
- cd … :回退到上一个目录,直接cd进入默认目录
- pwd:显示当前所在的目录路径
- ls(ll):都是列出当前目录中的所有文件,只不过ll列出的内容更为详细
- touch:新建一个文件,如touch index.js 就会在当前目录下新建一个index.js的文件。
- rm:删除一个文件。rm index.js就会把index.js文件删除。
- mkdir:新建一个目录。mkdir src就是新建一个src文件夹。
- rm -r :删除一个文件夹。rm -r src 删除src目录。
- mv 移动文件。mv index.js src 。index.js就是要移动的文件。src就是目标文件夹。
- reset:重新初始化终端/清屏。
- clear:清屏
- history:查看命令历史。
- help:帮助
- exit:退出。
- #表示注释。
四、Git必要配置
所有的配置文件,都保存在本地。
- git config -l :查看git相关配置信息
- git config --system -l:查看git相关系统配置
- git config --global --list:查看git用户配置
1、修改本地设置的用户名和邮箱(必须配置)
- 先将文件清空:C:\Users\ASUS-PC.gitconfig
- 设置名称:git config --global user.name “用户名”
- 设置邮箱:git config – global user.email “邮箱地址”
2、系统级别的配置存于:D:\java-software\Git\etc\gitconfig(git的安装目录下)
五、基本工作流程
1、git工作区域
- 工作区(Working Directory):平时存放项目代码的地方。
- 暂存区:用于临时存放改动的文件。本质只是一个文件
- Git仓库(本地仓库)(Git Repository):安全存放数据的位置,有提交到所有版本的数据。其中HEAD指向最新放入仓库的版本。
- 远程仓库(Remote):托管代码的服务器。
流程:工作区----->暂存区------>本地仓库------>远程仓库
2、创建本地仓库
- 创建一个全新的仓库:git init
- 克隆远程仓库:git clone [url]
- 克隆分支代码:git clone -b 分支名 地址
3、向仓库中添加文件流程
- git status:查看文件的状态
- git add 文件/文件名(从工作区到暂存区)
- git add . 添加所有文件到暂存区
- git commit -m “提交的描述”(从暂存区到本地仓库)。提交暂存区中的内容到本地仓库
- git push(从本地仓库-远程仓库)
- 推送到自己分支:git push -u origin 子开发分支名
4、忽略文件
在主目录下建立“.gitignore”文件
*.txt #忽略所有.txt结尾的文件,这样的话上传就不会被选中
!lib.txt #不忽略lib.txt
/temp #仅忽略项目根目录下的其他文件,不忽略其他目录temp
build/ #忽略build目录下的所有文件
doc/*.txt #会忽略doc下面的*.txt,但不包括doc/server/*.txt
idea中忽略的文件编写
*.class
*.log
*.lock
#Package Files #
*.jar
*.war
*.ear
target/
#idea
.idea/
*.iml
*velocity.log*
### STS ###
.apt_generated
.factorypath
.springBeans
### Intellij IDEA ###
*.iml
*.ipr
*.iws
.idea
.classpath
.project
.settings/
bin/
*.log
tmp/
#rebel
*rebel.xml*
六、码云的使用(gitee.com)
1、注册码云
2、配置SSH,实现免密码登录
- 安装git后,会自动生成C:\Users\ASUS-PC.ssh
- 命令行生成密钥:ssh-keygen -t rsa
- 公钥(id_rsa.pub)添加到gitee上。实现免密码登录
七、IDEA集成git
1、将项目克隆到本地。然后复制到自己编写的代码中。
2、在idea中就会出现git相关。修改gitignore文件
3、控制台git push进行提交到远程仓库
如果本地仓库有多次提交的文件没有同步到远程仓库,这是git push 会报错。需要强制推送:git push -u --force origin master
八、git分支
1、分支常用命令
- 列出所有分支:git branch
- 列出所有远程分支:git branch -r
- 切换分支:git checkout 分支名
- 新建一个分支,但依然停留在当前分支:git branch 分支名
- 新建一个分支,并切换到该分支:git checkout -b 分支
- 合并指定分支到当前分支:git merge 分支
- 删除分支:git branch -d 分支名
- 删除远程分支:git push origin --delete 分支名
git branch -dr 远程分支
四、Git基础设置
- 初始化设置:
- 设置用户名:git config --global user.name ‘github的名字’
- 设置用户名邮箱:git config --global user.email ‘邮箱’
- 查看设置:git config --list
- 创建一个git仓库:git init
- 删除仓库文件
- 删除工作区的文件:rm -rf 文件名
- 删除暂存区中的文件:git rm 文件名(删除后需提交)
- 提交:git commit -m ‘删除描述’
五、管理远程仓库
-
目的:备份,实现代码共享集中管理
-
步骤:
- 克隆操作:git clone 仓库路径
- 切换分支克隆:git clone -b 分支名 仓库地址
- 工作区–>暂存区:git add 文件名、
- 暂存区–>本地仓库:git commit -m “描述的信息”
- 将本地仓库同步到git远程仓库中:git push
六、个人站点
-
访问:https://lylbell.github.com
-
搭建步骤:
- 创建仓库:仓库名为lylbell.github.com
- 在仓库下创建index.html即可
七、项目站点(有问题)
访问:https://lylbell.github.com/仓库名
- 进入项目主页,点击settings
- 在settings页面,