Git基本使用

前言

   Git是一个开源的分布式版本控制系统,也是个内容管理系统(CMS),工作管理系统等。常见的网站如Github、Gitee、coding使用的都是Git。Git能够帮助我们记录每一次的修改和提交,创建分支、合并分支等。
本文主要介绍Git的基本操作和Git 图形化界面

Windows版安装

  1. 下载链接:https://gitforwindows.org/

打开->安装->一路next->finish。
git_install_1-20193420129

  1. 安装完成后空白界面右键,如下图示,出现Git GUI HereGit Bash Here两个选项:

git_install_2-201934201420

  1. 点击Git Bash Here选项,弹出Git命令窗口,可以在该窗口进行Git操作;

配置

使用Git命令窗口,输入以下命令配置全局参数用户名和邮箱地址,使用该参数表示本地所有Git仓库都使用这个配置:

1
2
git config --global user.name "weyoung"
git config --global user.email "ne_lucifer@163.com"

工作流程

git_工作流程-201934204551

Git的相关概念

  • 远程仓库(remote):Git的远程仓库;
  • 工作空间(workspace): 仓库文件夹里面除了.git目录以外的内容;
  • 本地仓库(Repository):使用commit命令将缓存区文件提交到本地仓库;
  • 缓存区(stage或者index):本地修改完文件之后需要add到缓存区,一般存放在.get目录下的index文件中;

一、Git常用命令

1. 创建仓库和初始化

这个操作主要用于本地创建源码或源文档,然后提交推送到远程仓库。
新建目录localRepo执行以下命令初始化为Git仓库,.git是一个隐藏的目录:

1
git init

1
git init localRepo

localRepo 为本地仓库
git-init-1-201934211129

2. 将文件添加到版本控制

在localRepo中新建一个文件README.txt,使用以下命令可以将文件添加到缓存区(暂存区)。

1
2
git add README.txt
git add *.java # 这个命令就是把.java结尾的文件提交到暂存区

3. 将暂存区文件提交到本地仓库

使用如下命令将暂存区文件提交到本地仓库,-m 后面的就是提交的说明内容。

1
git commit -m '这里填写提交信息'

git-commit-201934212219

4. 取消已缓存的内容

1
git reset HEAD README.txt

5. Git分支管理

5.1. 创建分支命令

创建分支:

1
git branch 分支名称

列出本地所有分支:

1
git branch

5.2. 切换分支命令

1
git checkout 分支名称

5.3. 删除分支

1
git branch -d 分支名称

5.4. 分支合并

本地有多个分支且非当前分支有了更改的内容,通过以下命令合并到当前分支中。
如:本地有两个分支,一个newbranch、一个master(当前分支),可以将newbranch合并到master分支中。

1
git merge newbranch

5.5. 查看提交历史

1
git log

6. 从远程仓库克隆代码到本地(常用)

这个是在日常工作中比较常用的命令,如已经有了现成的Git服务器和远程仓库,我们需要把远程仓库的项目克隆到本地。
使用以下命令:

git clone <远程仓库路径>

1
git clone https://gitee.com/nelucifer/ssm-note.git

git-clone-201934215050

7. 从远程仓库获取更新

1
2
3
git pull <远程主机名> <远程分支名>:<本地分支名>
# 示例如下:
git pull origin next:master

8. 推送代码到远程仓库

本地新增了一个文件,

  • 需要使用 git add 命令添加到缓存区;
  • 然后使用 git commit 命令提交到本地仓库;
  • 最后使用 git push 命令推送到远程仓库。

示例代码如下:

1
2
3
git push <远程主机名> <本地分支名>:<远程分支名>
# 示例如下
git push origin master

9. 总结

  • git commit:是将本地修改过的文件提交到本地库中;
  • git push:是将本地库中的最新信息发送给远程库;
  • git pull:是从远程获取最新版本到本地,并自动merge;
  • git fetch:是从远程获取最新版本到本地,不会自动merge;
  • git merge:是用于从指定的commit(s)合并到当前分支,用来合并两个分支;

二、Git图形化工具Source Tree

Source Tree号称是最好用的Git GUI工具,很适合上手,如下:
包含拉取、提交、推送、获取、添加标签、添加分支,无需使用命令,基本可满足日常开发使用:

SourceTree使用-20193422519

SourceTree 下载

SourceTree 下载地址:https://www.sourcetreeapp.com/

SourceTree 安装配置

双击下载的exe文件进行安装,发现强制使用Bitbucket登录,目前免密登录的方式已经失效。老老实实注册Bitbucket吧。如果嫌比较繁琐的话,可以使用Git自带的GUI工具、tortoisegit等,也可以使用IDEA相关的软件可以使用IDEA自带的GIT工具吧。

SourceTree-1-201934232613

选择 Create one for free链接,注册账户,完成之后点击Bitbucket授权,点击下一步。

SourceTree-3-201934232739

SourceTree-4-201934232850

SourceTree-5-201934234343

安装完成之后,输入我们的项目的远程仓库地址:

SourceTree-6-201934234631

拉取该项目,完成项目修改之后暂存->修改描述->提交,提交时会弹出账号密码框,输入账号密码即可。
可以看到账户密码已经被添加了:

SourceTree-10-2019350734

完成。

相关文章推荐

分享

觉得好看的话,请点击下方二维码扫描加关注,或者点个好看哦~~

个人微信公众号

更多联系方式

平台 链接
预览项目: https://nelucifer.gitee.io/
个人微信公众号: weyoung
segmentfault: https://segmentfault.com/u/nelucifer
CSDN: https://me.csdn.net/wlx001
简书: https://www.jianshu.com/u/99211cc23788
掘金: https://juejin.im/user/59b08c575188250f4850e80e