Git工具--教你如何从安装到掌握(三)

简介: Git工具--教你如何从安装到掌握

五、新建远程仓库

1、Gitee上的操作

(1)点击新建仓库

(2)新建仓库的配置

按下面配置即可,开源许可证可自行百度,这里不过多说明

(3)查看刚刚所创建的仓库


2、Github上的操作

(1)点击新建仓库,New repository

(2)新建仓库的配置

(3)查看刚刚所创建的仓库

六、将远程仓库克隆到本地

1、使用Https的方式克隆仓库

(1)复制克隆地址

(2) 在Bash里进行克隆

git clone 刚刚复制的链接

这时候要输入你的用户名和密码了(码云的用户名和密码)

(3)错误解决

由于本人在第一次SSH输入验证的时候不小心输错了用户名和密码,然后就报了如下的错误:

解决方案:控制面板-->用户账户-->管理你的凭据

Windows凭据-->普通凭据-->编辑普通凭据-->修改密码(码云的账户名和密码)-->保存

5c1d52f728238cfd67acb0e8a9162de6_27d20e62ac264d06aab9d375e32c6ff3.png

重置密码后,输入以下密令,重新输入用户名和密码

git config --system --unset credential.helper

d1fb6694be58fe1605d49a92352989e3_a6b482026c5046fd8f613e46f4a0bfd4.png

2、使用SSH的方式克隆仓库

(1)复制克隆地址


(2) 在Bash里进行克隆,无需输入密码

git clone git@gitee.com:poly-ma/mystudy.git

会出现Are you sure you want to continue connecting (yes/no/[fingerprint])?,输入yes就行

3、克隆结果


七、将本地仓库上传至远程仓库

1、第一种方式提交

(1)在码云上创建一个远程的仓库,我给这个仓库取名为“hello”

(2)创建一个本地的仓库,并初始化本地仓库

#初始化仓库
 git init

(3)用命令行创建一个文件hello.java,并输入相关内容

#创建一个java文件,并随便输入一些内容,比如说:hello,world!
$ cat >hello.java
hello,world!

(4)将本地仓库和远程仓库连接起来,使用SSH连接,采用HTTPS连接需要输入账户名和密码

git remote add origin "SSH链接"

添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。


(5) 将项目的所有文件添加至暂存区,并提交至本地仓库

git add .
git commit -m "first commit"

(6)远程仓库有的文件不在本地代码目录里,合并本地仓库和远程仓库

git pull --rebase origin master

(7) 将文件提交至远程仓库

git push origin master

注1:上面命令表示,将当前分支推送到origin主机的对应分支master。  git push -u origin master 命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。


注2:如果不进行第六步合并本地仓库和远程仓库,直接提交的话,会出现下述错误

3041e34af1fd580b589b579859dc4bfc_dc63542541df4d17980d842ccb5fce4b.png

(8)查看上传结果

2、第二种方式提交

(1)在码云上创建一个远程的仓库,我给这个仓库取名为“mystudy”

(2)克隆这个远程仓库,采用SSH的方式克隆

git clone "SSH的链接"

(3)把项目放进这个克隆到本地的仓库里

(4)提交至远程仓库

1. git add .
2. git commit -m "new html file"
3. git push

(5) 查看提交结果

3、查看提交历史

(1)查看历史提交记录

在使用 Git 提交了若干更新之后,又或者克隆了某个项目,想回顾下提交历史,我们可以使用 git log 命令查看。

git log

d5c948cc77068cb10bf5947bf40b7004_d0443fd3757d468aba3b29f0e8e923a3.png

(2)以列表的形式查看指定文件的历史修改记录(文件名不用打引号)

git blame 文件名

87ec5117e580e6d7427835ef6d498375_332b7ace37534e4fb4af28af5bf79369.png

八、Git分支

几乎每一种版本控制系统都以某种形式支持分支,一个分支代表一条独立的开发线。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的同时继续工作。而且当初始化Git仓库的时候,Git会默认创建一个名为master的主分支(它是必须要有的分支)。在Git中,分支只是一个指向单个commit的指针,Git为我们创建分支可以说就是创建了一个可以移动的新指针。在比较大的公司里,可能会面临多人协同开发的场面,这时候Git分支就可以防止互相干扰,提高协同开发的效率。

d5457c999de9351912de60ca686592f4_e4c767554fb44e47ab57b8d4deb59996.png

1、列出当前分支

当branch 后面不带具体参数时,下列命令会列出当前本地的分支

git branch


29e1fb4bbcfc09a116fcbde00dffb6e7_19923535c90944448f8525bf69fe0912.png

从上图可以看出,当前本地只有一个叫master的分支。事实上在我们执行git init初始化仓库的时候,Git就会默认为你创建一个master分支(一般来说,master分支必须得有)。

2、列出远程分支

git branch -r


9a560446b2dc704953cfc7ab8f71519e_b88e46a9ae8d438fa49260519705826b.png

master: 代表本地的某个分支名

origin master:代表着两个概念,前面的 origin 代表远程名,后面的 master 代表远程分支名

origin/master: 只代表一个概念,即远程分支名,是从远程拉取代码后在本地建立的一份拷贝

3、创建一个新分支

(1)当我们要创建一个新的分支时,直接git branch+分支名即可

#创建了一个开发用的新分支,名字叫dev
git branch dev
#创建了一个测试分支
git branch test

(2) 查看当前存在的分支

git branch


87016921873d14ffcad16777adb7bece_2d7f59070cf54c7f9d7421c310c0faf1.png

从上图可以看见,除了默认的master分支外,还有我们新创建的dev和test分支

4、切换分支

(1)切换到我们要修改的分支

#创建test.txt文件,输入内容hello,world
echo "hello,word" > test.txt
#将文件添加进暂存区
git add .
#将文件提交至本地仓库
git commit -m 'add test.txt'

用“ls”查看当前分支(master分支)的文件

用git checkout (分支名) 切换我们需要修改的分支

git checkout test

再用“ls”查看当前分支(test分支)的文件

当我们切换到test分支或者dev分支的时候,新添加的文件test.txt被移除了。当切换回主分支时,文件又重新出现了。


(2) 新建一个分支并切换到该分支下

表示创建了一个新分支v1,这里的v1表示分支名字,并切换到该分支下

git checkout -b v1

查看当前分支(v1分支),并在该分支下进行删除操作

 #在当前分支下删除文件test.txt
git rm test.txt


74e474c14ea0a86cd31dc3079a2a0f91_cf1bd271e2d842f2a0844db7c93a75a6.png

用touch命令在该分支下新建一个文件,并进行下列操作

#新建一个login.html文件
touch login.html
#查看当前分支下的文件
ls
#将文件添加进暂存区
git add .
#将暂存区的文件提交至本地仓库
git commit -m 'removed test.txt、add login.html'
#查看当前分支下的文件
ls
#切换回主分支
git checkout master
#查看主分支下的文件
ls

7872697b49482f0f48c28f26c192b94a_9ee3732a92344592a8e7a108d49f3e99.png

我们可以发现,在v1分支下,我们看不见删除的test.txt文件,但可以看见新创建的login.html文件;切换回主分支时,删除的文件回来了,但新增加的文件不存在于主分支中了。就好比多个版本的发布,一般开发都会保留修改之前的版本。上一个版本出现bug了,创建一个分支并在当前分支下去修改一些内容,而不是在原始版本上直接修改。可以把master分支看作初始版本,v1版本是修复版本。利用切换分支机制,可以将工作切分开来,从而让我们能够在不同开发环境中做事,并来回切换。

5、合并分支

假如我们在当前分支上刚开发完一个项目,这个分支有了独立的内容,我们便会想让这个分支合并到主分支里。

git merge v1

将v1分支合并到主分支上,再用ls命令查看,可以看见之前删除的test.txt文件不见了,出现了新文件login.html

6、删除分支

(1)将v1分支合并完就可以将其删除了

git branch -d v1

(2) 再次查看当前分支,发现v1分支被删除

git branch

92dce84b0afc873eb43ec2f61ac7f6e4_5dcbd02662034822a921c375ada204d2.png

7、其它分支命令

#更新远程分支列表,如果你的remote branch不是在origin下,按你得把origin换成你的名字
git remote update origin --prune
#删除远程分支
git push origin --delete 远程分支名
#查看所有分支,包括本地和远程的
git branch -a

九、IDEA集成Git

1、第一种方式提交

(1)绑定Git

将刚刚克隆的远程仓库文件复制到我们的项目目录下即可

(2)查看IDEA是否绑定

打开IDEA查看项目是否已经绑定Git成功,会出现三种图标,第一个是“Update Project”,更新项目;第二个是“Commit”提交;第三个是“Push”,上传至远程仓库。

(3)提交项目

点击绿色的√(commit),先勾选要提交的项目,可以看见右侧绿字显示添加的数量,再添加message描述(这个一定要添加),然后再commit提交至本地仓库

(4)从本地仓库提交至远程仓库,点击绿色箭头push

(5)查看提交结果

2、使用命令行提交

使用IDEA Terminal 命令行实现项目上传至远程仓库(不推荐使用)

#将项目的所有文件添加至缓存区
git add .
#将缓存区的文件提交至本地仓库
git commit -m "new file update map2.html"
#将本地的仓库上传至远程仓库
git push

3、第三种方式提交

(1)使用IDEA完成本地库的初始化操作

在IDEA导航栏里找到VCS,然后选择Create Git Repository,可以看见项目目录里多了一个.git文件,IDEA上面也多了几个图标,均表示本地库初始化完成了

c1b96a48787b5bc574565351d81ca8cb_dbbfe688ee074809be20327552131662.png

b76680cb1f907ac42f3c1d4d5f214af1_d13bfffabfd3473aa9973dbe899da7a8.png

(2) 使用IDEA将文件添加至暂存区

创建文件以后就会提示是否需要Add操作,当点击了Add后就会变为绿色,说明添加到了暂存区,未点击add会显示红色。

将整个模块添加至暂存区,然后整个src目录下的文件均变成绿色了

(3) 将暂存区的文件提交至本地仓库(进行commit操作)

填写好描述信息(必填),点击commit提交至本地仓库

IDEA会显示提交的日志和修改的日志

(4)将本地仓库上传至远程仓库,点击绿色箭头就行(Push),然后添加远程仓库的地址(这里采用的是SSH地址),默认的远程仓库名为origin

上传至远程仓库的时候被系统拒绝push了

在push之前,一定要在控制台加上下面的命令来拉取远程仓库的文件,否者会被拒绝提交,因为本地仓库和远程仓库是两个不同的仓库,远程仓库中有的一些配置文件本地仓库没有。

git pull --rebase origin master

(5)上传结果

4、使用IDEA克隆远程仓库

(1)File-->new-->Project from Version Control

(2)填入要克隆的远程仓库的地址,选择一个空的文件夹放克隆下来的文件

(3)克隆成功

5、IDEA分支管理

(1)在IDEA的右下方有个分支管理,在这里可以进行新建分支、切换分支等操作。比如我在这里创建了一个dev的分支。

点击New Branch可以新建一个分支,自定义一个分支名即可

(2) 我将分支切换至dev,并修改文件重新提交至远程仓库,结果如下所示:

026c8e082ac14b561a8513a3aef78cff_bfe53f4549df4bc0bbbfa4448e232d8a.png

d936a5ebddf5956064124d81b7d69d60_f4b2bcedb3ff40dcb2868ce12a90d72e.png

十、Git指令速查表

b86d334958a7477e3247df9f2355a26b_f0ecee14dd21436aafc6381278b612a9.png

相关文章
|
11天前
|
存储 开发工具 git
git工具使用教程全讲解
本文介绍了版本控制的概念及其重要性,详细对比了多种版本控制工具,如VSS、CVS、SVN和Git,重点讲解了Git的基本使用方法、工作原理及与SVN的区别。此外,文章还介绍了GitHub、GitLab和Gitee等流行的代码托管平台,以及如何在这些平台上注册账号、创建和管理仓库。最后,文章还提供了如何在IntelliJ IDEA中配置和使用Git的具体步骤。
32 1
|
1月前
|
缓存 网络安全 开发工具
全面掌握 Git 和 Gitee:从安装到上传的完整指南
本文档介绍了如何安装和配置Git,以及如何与Gitee进行连接。首先从官网下载Git并安装,接着配置用户名和邮箱,生成SSH密钥并将其添加到Gitee账户,完成无密码登录的设置。文档还提供了基本的命令使用指南,包括文件操作、Git命令和gitee代码上传流程,最后讲解了提交信息的规范格式和回滚操作的方法。
159 1
|
1月前
|
开发工具 git
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
git显示开发日志+WinSW——将.exe文件注册为服务的一个工具+图床PicGo+kubeconfig 多个集群配置 如何切换
38 1
|
1月前
|
存储 开发工具 C#
Git Extensions:一个.NET开源的 Git 图形用户界面(GUI)工具
Git Extensions:一个.NET开源的 Git 图形用户界面(GUI)工具
|
2月前
|
SQL 缓存 测试技术
代码管理工具之GIT:重新温习一下
代码管理工具之GIT:重新温习一下
|
3月前
|
Linux 开发工具 git
CentOS安装git客户端
【8月更文挑战第22天】在 CentOS 上安装 Git 可通过两种方式:一是利用 yum 包管理器,只需在终端依次执行 `sudo yum update` 和 `sudo yum install git` 命令,安装时按提示输入 y 即可;二是从源码安装,适用于有特殊需求的场景。首先安装必要的依赖库,然后下载并解压 Git 的源码包,最后通过一系列 make 命令完成配置与编译安装。无论哪种方式,安装完毕后均可通过 `git --version` 验证安装情况。
160 6
|
3月前
|
JavaScript IDE 前端开发
前端开发工具配置 nodejs & git & IDE
前端开发工具配置 nodejs & git & IDE
|
3月前
|
网络安全 开发工具 git
Mac安装Git
Mac安装Git
51 2
|
3月前
|
开发工具 git
成功解决:fatal: detected dubious ownership in repository at ‘E:/workspace/CSMarket‘。如何使用git工具通过命令行的形式
这篇文章分享了作者在使用Git工具初始化本地仓库时遇到的权限问题,提供了通过命令行解决Git仓库权限问题的方案,并介绍了如何使用Git命令行初始化项目、添加文件、提交以及关联远程仓库的步骤。
成功解决:fatal: detected dubious ownership in repository at ‘E:/workspace/CSMarket‘。如何使用git工具通过命令行的形式
|
3月前
|
存储 Ubuntu 开发工具
在Ubuntu 18.04上安装Git的方法
在Ubuntu 18.04上安装Git的方法
50 0