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 目录 删除已经下载的不完整的项目文件
相关推荐
mounter6251 分钟前
深入解析 RDMA 中的 Address Handler (AH) 缓存:AWS EFA 驱动的硬件演进与软件复用艺术
linux·kernel·rdma·hashtable·hash table·address handle
菜鸟歪歪歪1 分钟前
idea中增加api中转站教程(Mac,Window通用)
macos·intellij-idea
笑锝没心没肺7 小时前
fail2ban工具安装配置及使用
linux·运维·服务器
大卡片9 小时前
linux内核驱动开发
linux·运维·驱动开发
心心喵10 小时前
[linux] nohup和pm2的区别 进程保活
linux·运维·服务器
醉熏的石头11 小时前
Ubuntu 中的编程语言(中)
linux·ubuntu·scala
霸道流氓气质12 小时前
CodeBuddy中使用 MCP 工具将 XMind 思维导图转换为 Markdown —— 实操流程汇总
git·myeclipse·xmind
dddwjzx15 小时前
嵌入式Linux C应用编程入门——信号
linux·嵌入式
范什么特西15 小时前
网络代理问题
java·linux·服务器
utf8mb4安全女神16 小时前
【Redis数据库】哨兵集群/redis集群/安装配置/主从复制/数据持久化操作/数据结构/安全限制/PHP redis/
linux·服务器·数据结构·数据库·redis·缓存