Git安装+创建项目(附git常用命令总结)

一、Git是什么

Git是一个开源的分布式版本控制系统,用于敏捷高效地管理项目,是目前最先进版本控制系统(高端大气上档次)。
Git是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
Git与曾经常用的集中式版本控制工具CVS、SVN等不同,它分布式版本库的方式。在这里插入图片描述
GitHub是目前全球最大的Git开源资源库,网址:https://github.com/,这是程序员的聚宝盆,上面有最优秀的程序员贡献的最棒的代码和资源。
Gitee是目前国内优秀的Git资源库,既可以创建开源项目,又可以托管私有项目。网址是:https://gitee.com/.

二、 安装Git

在使用之前需要先安装Git,目前在Mac、Windows和Linux/Unix平台上运行。安装下载地址为:https://git-scm.com/downloads
下载相应系统的对应的安装文件,安装即可。

配置SSH

配置SSH是为了在执行Git命令时,不用每次都输入账号密码。

1.生成SSH Key

首先,进入个人主目录,在c盘自己创建的用户下,查看是否存在“.ssh”目录(需要打开显示隐藏文件夹),找到id_rsa.pub(公钥),若存在可直接跳过自步骤,若不存在就需要先生成一个SSH Key。
自己生成:
终端中进入个人主目录,执行命令:
$ ssh-keygen -t rsa -C “2513131***@qq.com”
其中,“2513131***@qq.com”是个人GIT平台的账号,替换成自己的。
在这里插入图片描述

我们使用自己的账号登录Git资源库网站,查看生成SSH Key的说明文档。点击个人账号,进入“profile settings”,点击“SSH Keys”,最后点击“generate it”。
这里以gitee为例,GitHub大同小异,先进入设置,找到SSH Key 设置,把
id_rsa.pub里面的内容复制进去,公钥标题可自行修改设置。

在这里插入图片描述

三、 Git控制流程

在这里插入图片描述
图中四个节点分别是:

  • Remote:远程资源库
  • Repository:本地资源库
  • Index:暂存区
  • workspace:工作区

节点与节点之间通过Git命令控制资源的交互:

  • fetch/clone:从远程资源库克隆拷贝到本地资源库
git clone {URL}
  • checkout:从本地资源检出到工作区切换分支
git checkout [branch-name]
  • pull: 从远程资源库拉取资源到工作区
git pull
  • status: 查看当前的状态
git status
  • add:把工作区的变更(添加、删除和修改)提交到暂存区
git add .
git add [dir]
git add [file1][file2]
  • commit :将暂存区提交到本地资源库
git commit
  • push:同步本地资源到远程资源库
git push

四 、Git的使用

  • 首先创建一个java文件(选择语言),以IDEA为例.
    找到file > new > project ,选择地址创建文件夹.

在这里插入图片描述

  • 在Gitee上面新建一个仓库,把地址输入进去,仓库名称自取.
    选择私有、开源或公开,已有仓库也可以在右上角点击导入,本地资源和远程仓库均已建立,接下来就可以将二者进行关联.

在这里插入图片描述

  • 在IDEA中我们打开刚刚创建的项目,然后点击下方的Teminal,进入终端控制.

在这里插入图片描述

  • 依次完成以下步骤:

Git初始化,输入命令

git init

使本地项目与远程资源库建立连接,输入命令
其中git@git.maidaotech.cn:201901/spring-boot-demo.git是该项目在资源库的SSH地址。

git remote add origin git@git.maidaotech.cn:201901/spring-boot-demo.git

将本地项目资源文件添加到暂存区,输入命令

git add .

提交暂存区到本地资源库,输入命令

git commit -m '关于本次提交的说明'

同步到远程资源库中,输入命令

git push -u origin master

至此,本地项目就与远程资源库建立连接,并托管所有已有代码。

切换分支

工作区默认是在主分支(master)上的,由于主分支的重要性,我们往往不能直接在主分支上开发代码,而是在其他分支上开发代码,待功能完善经过测试后合并到主分支上。
例如,我们要在“v0.1”版本的分支上编写代码,我们需要先将工作区切换到该版本。

  1. 先将远程资源库中分支同步到工作区,输入命令
git pull
  1. 执行切换分支的命令
git checkout v0.1

如果,回车执行命令后,终端输入“Switched to a new branch …”,代表切换版本成功。
需要注意的是,如果当前分支有未提交的修改,切换版本时会失败,这是对我们工作内容的一种保护机制,防止工作内容丢失。可以有以下几种处理:

  • 先提交当前分支修改的内容,查看第4条提交代码。
  • 废弃当前分支未提交的修改,执行命令:
git reset --hard
  • 暂存当前分支的修改,等其他分支工作完成,切回当前分支后再取回这些修改。

提交代码

在编写代码之前,一定要知道工作区当前所在分支,避免出现在错误的分支上编写代码。

  • 准备工作
    在完成工作提交代码时执行以下操作:
    查看分支修改状态,执行命令:
git status

查看工作区修改明细,执行命令:

git diff

提交前先更新远程资源库中最新代码到工作区,因为可能有团队中其他成员提交了代码。执行命令:

git pull

如果没有拉取到新的内容,或者拉取到新内容并且与工作区修改没有冲突,则可以提交代码。
如果拉取到新内容,并且和工作区修改的内容相冲突,则需要先处理掉冲突的部分,然后重复以上操作,提交代码。

  • 提交代码
    前面三部都是提交前的准备工作,不能跳过。确定本次要提交的修改准确无误后,方可提交代码。至少,别人拉取你提交的代码后,项目是能启动的吧。
    依次执行以下命令:
git add .
git commit -m '关于本次提交的说明'
git push

至此完成代码的提交.

Git 常用命令总结

  • git branch 列出本地已经存在的分支,并且当前分支会用*标记

  • git branch -r 查看远程版本库的分支列表

  • git clone 克隆

  • git checkout #一般当前分支是干净;

  • git pull 更新当前分支操作

  • git add ./文件名/文件夹

  • git commit -m “描述信息”
    建议commit前先执行一次pull

  • git push 提交

  • git push -f 强制提交覆盖远程仓库

  • git status 查看信息

  • git diff 目录/文件名(可选)

  • git log #查看日志

  • git reset --hard #强制重置本地分支
    –soft
    –mixed

  • git stash 入栈:将当前分支所有修改暂存到栈空间(保险起见先git add)

  • git stash pop 出栈:恢复分支到最后一次暂存的节点

  • git stash list

  • git merge #把分支v0.1合并到当前分支

  • git rebase -i

1.提交代码(pom.xml)
2.stash暂存
3.尝试rebase

1.提交代码到其他分支(commit之前)
<1>git add .
<2> git stash
<3> git checkout 目标分支
<4> git stash pop
<5> git add .
<6> git commit -m “message”
<7> git push

2.提交代码到其他分支(commit之后)
git checkout 目标分支
git merge branchName/commitId
提交代码

3.合并branch/commit合并到其他分支
<1> git checkout 目标分支
<2> git merger branchName/commitId
<3> 手动合并冲突,保证项目可以正常运行
<4> 提交代码(add、commit、push)

4.删除远程commit
# 1.通过找到想要退回到的哪个commit_id
$ git log
# 2.本地代码变成某个提交记录时刻的代码
$ git reset --hard commit_id
# 3.推送到服务器,一定要加 --force 参数 “master”:对应的分支即可
$ git push origin HEAD:master --force

vim
进入编辑模式 i等
修改内容
esc #退出编辑模式
:q 在没有修改的情况下直接退出
:q! 强制退出,废弃修改
:wq 保存并退出
:wq! 保存并强制退出

  • 3
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iiiiiiiice

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值