安装Git
- 在 Ubuntu 这类 Debian 体系的系统上,可以用 apt-get 安装:
$ sudo apt-get install git
- 在Mac系统上安装: 先安装brew ,然后安装git:
$ brew install git
不要使用Git的基本设置sudo brew instal git
,会给出警告??
- 首先我们对 Git 进行用户名和邮箱进行设置:
$ git config --global user.name "Jeremy"
$ git config --global user.email veniveci@aliyun.com
这里个人信息设置的作用:是为你在代码提交时自动署名标记,方便查看提交日志时区分作者;
- 设置 Git 推送分支时相关配置:
$ git config --global push.default simple
此设置是 Git 命令 push 的默认模式为 simple,当我们执行 git push 没有指定分支时,自动使用当前分支,而不是报错.Git基本使用
- 首先移动到项目所在根目录,对 Git 进行初始化:
$ cd project-directory
$ git init
- 将项目所有文件纳入到 Git 中:
$ git add -A
我们可以通过在.gitignore
文件中进行设置,来选择忽略掉一些我们不想纳入到 Git 版本管理中的文件(如缓存文件)。因此上面描述的『所有文件』指的是没在.gitignore
中被忽略的文件。
- 检查 Git 状态
$ git status
上面命令将会向你输出存放在 Git 暂存区的文件
- 保留改动并提交
$ git commit -m "Initial commit"
上面这行命令会将暂存区的文件都提交到 Git,-m 选项后面带的参数表示本次提交的简单描述。
$ git log
commit 3bc20a45cdc17701e41a9cb0d8e398f5991607a4
Author: Jeremy
Date:Sat Apr 7 21:38:17 2018 +0000Initial commit
从输出信息中可以很清晰的看到每次提交的作者、日期、描述等信息。注意看这里的 Author 项的内容就是我们上面设置的用户信息。
- 使用 Git 进行恢复被删除文件:
$ git checkout -f
作用是将在暂存区的更改文件进行强制撤销。
- 使用Git创建远端仓库(以GitHub为例)
$ git remote add origin git@github.com:your_username/hello_laravel.git
- 使用Git推送到远端仓库
$ git push -u origin master
上面命令将本地的master
分支push
到origin
主机,同时指定origin
为默认主机,后面可以不加任何参数使用git push
或git pull
命令
- 新建分支
$ git checkout master
$ git checkout -b
从master分支上克隆一个新分支
- 合并分支
$ git checkout master
$ git merge
Updating f42c576..3a0874c
Fast-forward
index.html | 2 ++
1 file changed, 2 insertions(+)
将合并回你的
master
分支上.
- clone分支
$ git clone
多个远程仓库的管理
你要clone项目的URL,
你本地创建的仓库名(如果你想使用Git默认的,可以不用写)
- 添加多个远程仓库
git remote add
例如:添加一个命名为python
的远程主机,其URL为https://github.com/hello-kitty/Python_Tutorial
?apprentice git:(master) git remote add python https://github.com/hello-kitty/Python_Tutorial
- 查看有多少远程仓库
?apprentice git:(master) git remote -v
originhttps://github.com/schacon/ticgit (fetch)
originhttps://github.com/schacon/ticgit (push)
pythonhttps://github.com/hello-kitty/Python_Tutorial (fetch)
pythonhttps://github.com/hello-kitty/Python_Tutorial (push)
-v
:会显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL。
- 查看某个远程仓库的具体内容
?apprentice git:(master) git remote show origin
* remote origin
Fetch URL: https://github.com/schacon/ticgit
PushURL: https://github.com/schacon/ticgit
HEAD branch: master
Remote branches:
mastertracked
dev-branchtracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (up to date)
上面是查看origin
主机的内容,你也可以查看其它的。比如:git remote show python
就是显示python
主机仓库的详情
- 拉取别的主机上的内容
?apprentice git:(master) git fetch python
现在你可以在命令行中使用字符串 python 来代替整个 URL。 例如,如果你想拉取 python 的仓库中有但你没有的信息,可以运行 git fetch python.
- 远程仓库的移除与重命名
?apprentice git:(master) git remote rename python python3
?apprentice git:(master) git remote
origin
python3
?apprentice git:(master) git remote rm python3
?apprentice git:(master) git remote
origin
?apprentice git:(master)
如果想要重命名引用的名字可以运行 git remote rename 去修改一个远程仓库的简写名。 例如,想要将 python 重命名为 python3,可以用 git remote rename 这样做.
【Git的日常使用】如果因为一些原因想要移除一个远程仓库 - 你已经从服务器上搬走了或不再想使用某一个特定的镜像了,又或者某一个贡献者不再贡献了 - 可以使用 git remote rm ,例如上面移除python3的主机。