学习课程:【GeekHour】一小时Git教程_哔哩哔哩_bilibili
提示:window和Ubuntu mac指令不同dir 等于 ls
chdir 等于 pwd
dir /A:H 等于 ls -a
如果用cmd就是windows
如果用open git bash here 就可以用ubuntu指令了一 基础知识
1 查看版本
git -v
git version 2.45.2.windows.1
2 配置用户名(只需要执行一次)
git config --global user.name "xxx"
--global表示全局配置 ,不加就只针对本地仓库git config --global --list
3 配置邮箱(只需要执行一次)
git config --global user.email "xxx"
4 保存用户名+邮箱
git config --global credential.helper store
5 查看git配置信息
git config --global --list
查看name email等信息
二 创建仓库
1 git init
2 git clone
3 git init
初始化一个空的仓库
4
工作区(working)-暂存区(staging)-本地仓库关系(local)
.git---.git/index---.git.objects
git add
git commit
三 添加和提交文件
1 .git 同级目录下
写入文字"xxx"到file1.txt
echo "第一个文件">file1.txt
2 查看状态
git status
显示多了一个文件file.txt
>>>红色表示未跟踪的状态
3 通过git add file1.txt添加到暂存区
>>>绿色表示添加到暂存区(等待被提交)
4 git rm是git add的反向操作,将暂存区的文件取消暂存
5 提交到仓库
git commit -m "第一次提交"
提交到仓库(需要结合-m 参数, 不加-m就会进入一个交互界面)
只会提交暂存区,不会提交工作区
6 创建第二个文件测试一下
echo "第二个文件的内容" > file2.txt
git status
git commit -m "第一次提交"
git status查看状态,绿色暂存区的文件已经被提交,这里没有了
7 创建更多文件
echo "file3" > file3.txt
echo "file4" > file4.txt
echo "file5" > file5.sh
git staus
git add *.txt
git add .表示添加所有文件
8git commit( 不加-m就会进入一个交互界面)
进入vim状态
i 进入编辑模式,esc进入命令模式
左上角输入"这是第二次提交"
:wq 退出
git status查看发现已经提交
9 git log 命令查看提交记录
git log --oneline 简洁查看
四 git reset 回退版本
五、git diff 查看差异
六、git rm 删除文件
七、gitignore忽略文件
八、Github注册账号
自行注册
九、SSH配置 and 克隆仓库(从github到本地---从本地push到github)
1 填写
仓库名(起名为 remote-repo)---说明---公开或私人---readme---添加gitignore---许可证
2 创建仓库(点击上图绿色按钮)
3 关联仓库
两种方式 HTTPS 需写用户名和地址(21年已经停止使用)
或者SSH 无需写用户名和地址 (推荐SSH)
a 本地没有,就创建一个
b 本地已有仓库的处理办法
git clone git@github.com:xxx/remote-repo.git
github仓库克隆到本地
显示如下,因为还没有配置SSH秘钥才会这样
4 构建ssh链接 配置SSH秘钥()
cd ~ 进入根目录
cd .ssh 文件
ssh-keygen -t rsa -b 4096 (-t 秘钥类型 -b 生成大小)
输入完会出现
Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa):
红色就是.ssh所在文件
5 第一次使用 :
一直回车2次即可, 如果之前生成过在此生成会覆盖
生成这个文件.ssh/id_rsa
下面打勾位置回车 即可
5 如果不是第一次使用 :输入新的秘钥名,例如 test
在这段话后面 Enter file in which to save the key
输入test,后面回车,输入密码(指定一个新的密码),这里会出现一个新的密钥对
6 继续看第一次使用情况
打开公钥文件xx.pub(可以用记事本打开)然后复制里面内容
7 打开github
点头像-setting
SSH and GPG keys
New SSH key
起名---粘贴公钥---add
第一次的话这里就完事了
如果不是第一次使用 :输入新的秘钥名,例如 test
在这段话后面 Enter file in which to save the key
输入test,后面回车,输入密码(指定一个新的密码),这里会出现一个新的密钥对
做完上面的add
还需输入
tail -5 config
意思是使用github的时候使用ssh中test这个密钥
8 这里我们在Git/learn-git文件夹这里,右键open git bash here,这样就可以用ubuntu指令
git clone git@github.com:xxx/remote-repo.git
然后看下/d/Research/Git/learn-git/这个路径下有了
remote-repo文件
9 向里面添加东西 echo hello > hello.txt 创建一个txt文件
10git add . 添加到暂存区域
11 git commit -m "1st commit " 添加到仓库
12 git ls-files 看仓库状态
13 git push 推送上去
总结
十、(本地仓库放到远程github)关联本地仓库和远程仓库(这块我没实现)
1 github创建一个仓库 (点击+号---new repository)
名字test
复制下来 URL
2 远程仓库test 本地仓库xxx
(本地创建仓库:找个文件夹-右键open git bash here-git init)
看下本地仓库 xxx
框里说明如何推本地库到远程github
git remote add origin git@github.com:StormArcher/2nd-repo.git
git branch -M main
git push -u origin main
3
git remote add origin git@github.com:StormArcher/1st-repo.git
# <别名> <原名>
4
git remote -v
查看当前仓库对应的远程仓库的别名和地址
5
git branch -M main
指定分支为main 默认的分支名称main
6
git push -u origin main:mian 把
本地仓库和别名为origin的远程仓库关联起来,
mian:mian表示把本地仓库的mian分支推送给远程仓库的mian分支
git push -u origin main 如果本地和远程名字相同,只写一个mian即可
这里报错
error: src refspec main does not match any
error: failed to push some refs to 'github.com:xxx/test.git'
错误:SRC refspec main不匹配任何
错误:未能推送一些参考到"github.com:xxx/test.git"
十一、Gitee的使用和GitLab本地化部署
十二、GUI工具
十三、VSCode中使用Git