2017-06-16 | Git工具 | UNLOCK

Git工具使用

1.【初始化创建本地仓库】

使用git工具,每一次都要初始化创建仓库 在最外层文件夹内右键点击git Bash Here 输入以下命令

1
git init

2. 设置用户名跟邮箱

用意:指在告诉仓库,你是谁,是谁在操作本地,以便以后提交文件的时候,提交到对应的仓库 ,设置需要输入以下命令。

1
2
3
git config --global user.name '用户名'  /*用户名可以随便设置*/

git config --global user.email '邮箱' /*邮箱格式需要是正确的邮箱格式*/

3.1  提交文件到仓库并作出解释

用意:每一次提交需要说明提交的文件名,并对其作出说明,这样每次提交,仓库都会保留一次提交日志,这样方便下次查看的时候,更加方便的查找

1
2
3
git add 文件路径   /*文件路径一般用相对路径,这一步操作相当于将文件放在仓库门口*/
git commit -m '本次提交说明' /*这一步操作相当于将文件备注个名称,然后放在仓库里面*/
/*这两个命令要一起输入,单个输入会出错*/

3.2 一键提交当前文件夹内所有文件

1
git commit --all -m '本次提交说明'

4. 查看文件状态,看是否有修改,或者修改成功与否

1
git status

5. 忽略一些文件,免得不必要文件提交到仓库

用意:因为开发过程中,有一些文件是只给自己看的,或者一些编译器自动创建的文件,不希望提交到仓库,那么就可以设置一下。

用编辑器等软件创建一个文件,文件名为 .gitignore ,里面书写不需要提交到仓库里的文件名
例如:/开发者日志.txt /.idea

6.1 查看已经提交的详细日志

用意:当多次提交之后,想查看自己提交过多少次就可以查看日志

1
git log

6.2 查看提交日志的单行信息

用意:上面用 git log 查看的东西太过繁琐。这个可以只查看自己写的提交的日志

1
git log --oneline

6.3 查看所有的操作日志

用意:查看自己对文件或者仓库进行了那些操作,本命令就可以查看全部

1
git reflog

7.1   返回到之前的某项操作

用意:当我们将文件推到仓库之后,想撤回某个阶段,这项操作就可以返回到指定的版本。相当于撤销 ctrl + z

1
git reset --hard Head~0  /*最后的数字 0表示回到上次操作,1表示回到上上次操作,依次类推*/

7.2 返回到指定的操作版本

用意:当返回之后,觉得想返回了,那么就可以利用这个命令返回到指定版本

1
git reset --hard 版本号  /* 版本号通过查看日志知道 */

8.1 创建分支

用意:当主分支里程序在运行,但是此时需要修改主支里的代码。但是要想不影响主程序的运行,那么就可以创建一个分支。然后在分支里进行修改,修改完之后,再次放到主支里面。

1
git branch 分支名  /* 分支名可以是英文,也可以是中文,但是建议是英文 */

8.2 查看有几个分支

1
git branch

8.3 将分支内容合并到主支

1
git merge 分支名

注意:当主支跟分支都进行了提交之后,再进行合并分支的时候,就会提示合并冲突,这种冲突一般需要手动修改,可以都留下(删除合并冲突的提示),也可以删除分支或者主支中起冲突的代码。
这种冲突主要是因为,主支里跟分支里都有不同的,当两个合并遇见的时候,就会产生 who are you 这种疑惑感,所以就会提示冲突

8.4 切换分支

用意:主支进行项目运转,切换到分支,然后将我们写的代码提交就可以提交到分支里,丝毫不影响主支里的进程。

1
git checkout 分支名

8.5   删除分支

用意:当分支不需要的时候,就可以利用这个删除分支,这样分支里存在的代码也不会存在的。

1
git branch -d 分支名

9. 提交到线上代码托管平台

用意:虽然我们提交了代码到本地。但是终究只是存在在我们自己的电脑上,当我们换台电脑,就看不到我们之前提交的代码了,所以需要一个在线托管平台,
1. 首先得有一个托管平台账号,有账号之后,就可以新建项目(以 GitHub 为例)
2. 点击 new repository 新建项目,填写项目名称,以及是否公开,还有就是是否帮你创建md文档(不建议勾选)
3. 如果是自己个人托管的,可以利用 HTTPS 里的地址,一般是 https://github.com/star-Ming/test-demo.git 这种格式的。
4. 当然一个项目大都不可能是自己一个人完成的,而且在公司中,不可能所以上传文件的人员都有项目托管的 用户名密码 ,但是又有可能多人协作开发,需要上传到同一个地方,所以就有 SSH密匙这个东西 ,本地写 ssh-keygen -t rsa -C 'itheima@sina.com' 前面的 rsa 不能更改,后面的邮箱可以随自己设置。
上传到在线托管平台的完整过程

1
2
3
4
  git add ./   /*将文件放到本地仓库门口*/
git commit -m '本地提交说明' /* 说明本次提交,并将其放在仓库内*/
git push 项目链接(https://github.com/star-Ming/test-demo.git 或者 SSH 私匙地址)
/* 如果在提交的过程中发生提交冲突,那么就需要先 pull 一下将不同的文件下载下来,然后添加到本地仓库,然后再 push 到 GitHub 上*/

10. 从网上下载项目到本地

1
git clone 项目地址 master  /*表示将网上的问价克隆到本地*/

评论加载中