1.什么是git?
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。既然你了解了什么是git,那接下来就开始新建属于自己的git吧。
2.下载和安装git
- 官网下载地址: git-scm.com/downloads/
- 网盘mac os x: pan.baidu.com/s/1pKFAVrX/ 密码:
gvmr版本为git 2.14.1- 网盘windows: pan.baidu.com/s/1ccwkrW/ 密码:
ykgy版本为git 2.14.1- 下载完成后直接默认安装就行,安装完成后可以在终端下输入
$ git --version查看是否安装成功。
3.注册github账号
- 版本控制器的种类很多,这里我建议选择github版本控制器
- 打开官网:github.com 右上角 sign in or ** sign up** 分别为 登录 或注册,点击 注册 后,需要填写一个 username(用户名) 、email(邮箱地址) 和 password(密码) 填写完成后一路提交。
4.生成ssh key
- 打开 mac终端
- 检查 ssh key
$ cd ~/.ssh如果存在,先将已有的ssh备份,或者将新建的ssh生成到另外的目录下,如果不存在,通过默认的参数直接生成ssh- 生成ssh key
$ ssh-keygen -t rsa -C 727417703@qq.com期间会提示你输入key的文件名称,密码和确认密码,一路EnterGenerating public/private rsa key pair.
Enter file in which to save the key (/Users/threebears/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
5. 将ssh key保存在github中
- 打开刚刚生成的key文件
id_rsa.pub,因为mac以点开头的文件系统都是默认隐藏的,我们可以通过macFdinder前往刚刚保存key的默认目录/Users/threebears/.ssh/id_rsa,其 threebears 为你mac的用户名。- 复制
id_rsa.pub文件里的内容,打开你的github,在右上角头像小图标中选择Settings- 在左侧菜单栏中找到 SSH and GPG keys ,将刚刚复制的 ssh key 添加进去(ps: title可以忽略不填),保存成功后你就可以使用 git clone or push 代码到 github 仓库了
- ssh key设置成功后可以在终端使用
ssh -T git@github.com进行测试,如出现
6. git的基础使用
-
git init 用 git init 在目录中创建新的 Git 仓库。 你可以在任何时候、任何目录中这么做,完全是本地化的。 在目录中执行 git init,就可以创建一个 Git 仓库了。比如我们创建 test 项目:
cd test 跳转 Initialized empty Git repository in /Users/threebears/test/.git/ 在
/Users/threebears/test/目录下就创建了一个.git文件夹,这个就是git仓库。 -
git clone 使用
git clone拷贝一个Git仓库到本地,让自己能够查看该项目,或者进行修改。 如果你需要与他人合作一个项目,或者想要复制一个项目,看看代码,你就可以克隆那个项目。 比如:$ git clone git@github.com:wz1509/GankIo-Kotlin.git Cloning into 'GankIo-Kotlin'... remote: Counting objects: 178, done. remote: Compressing objects: 100% (111/111), done. remote: Total 178 (delta 41), reused 172 (delta 37), pack-reused 0 Receiving objects: 100% (178/178), 3.48 MiB | 18.00 KiB/s, done. Resolving deltas: 100% (41/41), done.
静静等待一段时间就可以克隆到本地,期间如果提示权限被拒绝,请检查你的ssh key或设置本地git个人信息:
```
> git config --global user.name "your real name" #你的`github`用户名
> git config --global user.email "xxxxx@gmail.com" #对应的邮箱
-
**git add ** 使用
git add命令可将该文件添加到缓存。如:touch test1.txt #创建一个文件 touch test2.txt $ ls #列出该目录下所有文件,包含文件夹和文件
README.md gradle gradlew.bat app gradle.properties img build.gradle gradlew settings.gradle test1.txt test2.txt$ git status -s #查看和上次提交之间的状态
?? test1.txt ?? test2.txtgit add test1.txt test2.txt #添加到缓存区 git status -s
A test1.txt A test2.txtgit add .
将所有变化的文件提交到缓存区
-
git reset HEAD 撤销已在缓存区的文件
git reset HEAD -- test1.txt git status -s
?? test1.txt A test2.txt -
git status 查看在你上次提交之后是否有修改。如果在后面追加
-s则是查看简短信息,反之查看详细信息。git status
On branch master Your branch is up-to-date with 'origin/master'. Changes to be committed: (use "git reset HEAD <file>..." to unstage) new file: test1.txt new file: test2.txtgit status -s
A test1.txt A test2.txt -
git diff 查看最近的改动,比如终端敲上:
$ git diff截取了部分日志, 红色部分前面有个- 代表我删除的,绿色前面有个+ 代表我增加的 不过
git diff只能比较当前文件和缓存区文件之间的差异。 -
git branch 查看当前分支列表。比如一个项目需要一个团队共同去完成,这个时候就要用到分支来分配各自的任务。
git branch #查看当前分支列表 git branch wz #新建一个
wz分支 git checkout wz #切换到`wz`分支 git branch -d wz #删除wz分支,如果**-d换成-D**就是强制删除 $ git checkout -b wz #新建并切换到wz分支吻醒提示:图中的*和绿色代表当前所在分支。
⚠️注意1:如果你在wz分支内,那么不能删除wz分支,需要现切换到master后再删除wz分支。 ⚠️注意2:新建的分支是在你当前所在的分支基础上进行的。比如你在master分支上新建了wz分支,那么wz就和master内容完全一致。
-
git commit 使用
git commit将缓存区内容添加到仓库中。git commit -m "添加两个测试文件" #后面的文本为提交日志,建议每次提交到仓库都要写提交日志。
-
git pull origin master 把远程仓库代码合并,以保证两端同步。
-
git push origin master 把本地代码提交到github仓库master分支。一般在push前都会先pull,这样不容易造成冲突。
第一篇博客,markdown语法不太熟练,如果有什么问题可以联系我,谢谢!
QQ:727417703 邮箱:727417703@qq.com
我的博客:wz1509.github.io/