【Git的基本用法及与远程仓库的交互)】

前言:上一章简要介绍了git的安装和基本配置,这里介绍git的基本操作以及其与远程仓库的交互。

上一章传送地址:git的快速安装与配置

1.Git项目创建(获取本地仓库):

git的基本工作步骤:
先由工作区到暂存区再到仓库。
请添加图片描述
1.新建一个文件夹作为工作目录:
2.进入该文件夹,进入git命令行,并输入:

git init

进行git项目的初始化,之后当前目录中会出
现 一个.git目录。
3.将要上传的文件放至工作空间。
4.对要修改的文件进行修改后,使其进入工作区然后输入:

git add .

将文件添加至暂存区,将其交由git管理。
4.输入:

git commit -m “此处可任意输入”

将暂存区的文件提交到本地仓库。
5.其他相关操作指令:
1.查看当前修改状态:

git status 

2.查看提交日志:

git log
git log [option]
  --all                    #显示所有分支
  --pretty=oneline         #将提交信息显示为一行
  --abbrev-commit          #使得输出的commited更简短
  --graph                  #以图的形式显示

3.版本回退

git reset --hard commitID

commitID 可以通过git-log 或者git log 获取
同时如果要回退到之前的版本则可以通过

git reflog

来获取之前的commit ID
4.添加文件至忽略列表
可以通过创建一个名为.gitignore的文件,用于列出需要忽略的文件

# 为注释
* .txt  #忽略所有 .txt结尾的文件
!lib.txt  #但lib.txt除外
/temp #忽略该目录下所有文件但不包含该temp目录
build/ #忽略build目录下的所有文件
doc/*.txt #忽略该子目录下的.txt文件,但不忽略子子目录下的.txt文件。

2.Git 分支

在开发过程中先将代码放到不同的分支当中,不同分支之间互不影响,在修改完成之后再进行合并。
1.查看本地分支

git branch

2.创建本地分支

git branch 分支名

3.切换分支

git checkout 分支名
git checkout -b 分支名 (新建并跳转到该分支)

4.合并分支

git merge 分支名

5删除分支(不能删除当前分支)

git branch -d 分支名
git branch -D 分支名(强制删除)

6.冲突解决
当两个人同时开发,需要进行版本合并时,两者对相同内容做了不同的更改,此时再采取合并就会出现矛盾,此时需要手动解决。

3.远程仓库交互

常用的远程仓库有gitee和github,但github有墙的限制通常登录较慢,故此处采用gitee。
1.注册gitee(码云):
在这里插入图片描述
2.生成/添加SSH公钥:
Gitee 提供了基于SSH协议的Git服务,在使用SSH协议访问仓库之前,需要先配置好账户/仓库的SSH公钥。
你可以按如下命令来生成 sshkey:
先进入到用户目录的.ssh下并输入:

ssh-keygen -t rsa

一直回车即可生成密钥。
查看生成的密钥:

cat ~/.ssh/id_rsa.pub

复制所得密钥,将其添加到gitee公钥中。
在这里插入图片描述
3.git本地端与远程端建立连接
将仓库的ssh地址复制后在对应git项目中的git bash中输入:

git remote add origin 加远程仓库对应的ssh地址
#其中origin 对应的是仓库的别名,可随意设置。

输入

git remote

可查看远端仓库
将本地分支推到远端可输入

git push [-f] origin master:master
#若push两端均为master,则可以省略:master  其中-f 表示强制上传

当要新建的仓库与本地文件有冲突时,有以下两种解决方法:
1.将远程仓库克隆到本地,再将要上传的文件加入到本地仓库中,然后git push.
2.利用指令

git pull origin main --allow-unrelated-histories

忽略不相关文件冲突。
利用

git push --set-upstream origin master

可绑定默认上传路径
之后便可以通过git push直接上传本地的master到origin的master上了。

git branch -vv

可查看本地分支与远程分支的对应关系。
4.远程仓库的克隆

git clone [ssh地址]  [指定本地仓库名称 可省略]

5.远程仓库的抓取与拉取

git fetch [远程仓库名称]  [分支名]
#将仓库中的更新都抓取到本地但不合并 ,如不指定分支则默认抓取master
git merge origin/master
#表示合并远程仓库中的master分支到当前本地关联分支
git pull [远程仓库名称]  [分支名]
#等同于远端fetch + merge

以上就是git 的基本用法介绍及其与远程仓库的交互啦。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值