Git教程(安装+流程+常用命令)

基础

首先安装git,官网下载,一直点next即可。

在项目中创建.gitignore文件,里面写出需要忽略上交的文件路径:

复制代码
/node_modules
/unpackage/dist

如果类似于unpackage只有一个文件,如果忽略了dist文件夹就不会被git跟踪,则添加一个没有内容的文件.gitkeep用来保证。

然后在文件资源管理器中shift+鼠标右键,打开powershell:

复制代码
git init
git status
git add.
git commit -m "init project"
git push
git fetch
git merge origin/master 
git pull
git log
git reflog # 恢复删除的提交记录
git reset --hard commitID # 版本回退,commitID使用git-log查看
----------------------------------------------------------
git branch # 查看分支
git branch 分支名 # 创建分支
git checkout 分支名 
git checkout -b 分支名 # 创建并切换到分支
git merge 分支名 # 合并分支到当前分支
git branch -d 分支名 # 在本地删除分支,但是远程仓库仍旧保留分支
cls

退出编辑器模式esc,:wq ,清屏幕clear

合并时如果遇到同一行不一样,就会有冲突,这时打开冲突文件,删除错误的部分和不属于原文件的部分,然后重新提交推送。

推送到gitee

首先在gitee创建仓库(不用进行任何初始化的那种,因为本地要覆盖这个仓库),然后打开git-bash,输入以下,一路回车即可:

生成公钥:ssh-keygen -t rsa(注意会覆盖原来的公钥)

获取公钥:cat ~/.ssh/id_rsa.pub

获取公钥直接选中,会自动复制,单击鼠标滚轮,会自动粘贴到git-bash

将密钥粘贴到仓库的公钥设置部分(添加个人公钥才可以读写,否则仓库公钥只读),然后返回git-bash查看是否成功设置:

验证:ssh -T git@gitee.com,然后再输入yes即可看到successfully

然后指明远程仓库位置:git remote add origin SSH公钥:[git@gitee.com](mailto:git@gitee.com):wenshanyu/uni-shop-2.git,SSH公钥位置点击克隆/下载可以再次看到

创建仓库origin:

复制代码
git remote
origin

将分支推送到origin仓库:git push origin master

查看分支:git branch -vv,当前master对应远程仓库的master

别人先push,你再pull,和本地不一致,会导致冲突,让你进行版本选择,确定版本之后,别人再pull,即便和本地不同,也会直接覆盖。两个版本之间只会起一次冲突,一旦确定用哪个版本,另一个版本就只有被覆盖的份。

复制代码
ssh-keygen -t rsa # 生成公钥
cat ~/.ssh/id_rsa.pub # 查看公钥
ssh -T git@gitee.com # 确认gitee和本地连接(确认输入公钥正确)
git remote add origin git@gitee.com:wenshanyu/uni-shop-2.git # 链接远程仓库地址
git remote origin # 建立远程仓库
git push origin master # 推送分支
git push -u origin tabbar # 首次将本地分支推送到远程仓库
# -u 是 --set-upstream 的简写
git push --set-upstream origin master:master # 推送并指定分支master对应origin仓库的master,下次推送可以直接git push
git push
git branch -vv # 查看分支
git clone git@gitee.com:wenshanyu/uni-shop-2.git # 将仓库的内容下拉到本地(日志也一样)
git fetch # 抓取远程仓库的更新文件到本地,但是不进行合并
git merge origin/master # 将本地文件和保存本地的远程仓库文件合并
git pull # 抓取并合并远程仓库和本地文件

IDEA使用Git

配置git》创建远程仓库》项目配置.gitignore》VCS栏创建仓库》提交本地代码》version Control点击Log,查看提交情况》VCS-git-push》define remote,点击添加SSH远程仓库地址》提交远程仓库

克隆仓库代码:VCS-Checkout version Control-git-clone》输入SSH地址克隆仓库

当你正常push不上去的时候:先pull一下,看看是否有冲突,解决冲突。

如果你先push了,那你之后被修改了,你再pull就直接覆盖。

在Log的某个版本处右键创建分支,这样就可以随意选择基于什么提交点版本的分支了。

切换分支之前,要提交所有代码。

Linux中

复制代码
git clone https://... 复制别人的项目到我们的电脑(但是只会拉取小文件)
安装lfs工具
sudo apt install git-lfs~ 如果安装失败,先更新版本 apt update
git lfs install 初始化
git clone 网址 先拉取小文件,当出现100%时ctrl+c退出
ls 查看下载到哪个文件夹中
cd 文件夹 进入该文件夹,此时调用
git lfs pull 会拉取大文件
git lfs ls-files 查看文件是否完整,前缀包含?问号表示文件完整,包含-减号表示文件不完整,此时返回上一级目录
cd ..
rm -r 目录 删除已经下载的不完整的项目文件
相关推荐
Irissgwe2 小时前
四、Git 版本回退与撤销
git·git回退·git撤销
诸神缄默不语2 小时前
在Linux中使用Vim编辑文本
linux·vim
菜鸟是大神3 小时前
07-Claude Code 的常用命令和快捷键
linux·运维·服务器
hj2862513 小时前
Linux存储空间管理完整笔记
linux·运维·笔记
Coin_learning3 小时前
Git 小白教程:从安装上云端,一步不落。
git
Championship.23.243 小时前
Linux 3.0 中断机制深度解析:从传统PIC到现代中断架构的转折点
linux·运维·架构·中断
小猫咪013 小时前
Linux OOM Killer 是什么?程序为什么突然被杀?
linux·运维·服务器
404是NotFound呀4 小时前
[FPGA] Ubuntu 22.04 安装 Vivado 2023.1 和 PetaLinux 踩坑记录
linux·ubuntu·fpga开发
lightqjx4 小时前
【Linux】从冯·诺依曼体系到操作系统的理解
linux·运维·服务器·冯·诺依曼体系
kobe_OKOK_4 小时前
分配free空間給ubuntu server
linux·运维·ubuntu