Git 初相识

安装

  1. 去官网下载安装包:https://git-scm.com/downloads
  2. 全部选择默认安装即可

使用

  1. 在 gitee.com 上注册一个账号 xdd1997
  2. 在 gitee.com 上建立一个仓库 python_project,见下图,不要勾选其他框框
  3. 获得 git 链接 https://gitee.com/xdd1997/python_project.git
  4. 打开 AA 文件夹—右键—Open Git Bash here
1
2
3
4
5
6
7
8
9
10
git config --global user.name "xdd1997"
git config --global user.email "[email protected]"

mkdir python_project
cd python_project
git init
git add .
git commit -m "first commit"
git remote add origin https://gitee.com/xdd1997/python_project.git
git push -u origin "master"
  1. 会弹出一个窗口,需要输入 gitee.com 的用户名与密码

一些应用情境

彻底删除仓库的一些版本

1
2
3
# 下面两行命令会删除 9847c8c 之后所有的版本,9847c8c版本会留下来
git reset --hard 9847c8c
git push origin master --force

git pull 内部的门道-合并与变基

搜索关键词:git pull,git fetch,git merge,git pull –rebase,自动变基

https://mp.weixin.qq.com/s/n1KbNaT46SwVPCBxpW31ow

Git Error

remote: Repository not found. fatal: repository ‘xxxxxxx’ not found

参考:

Repository not found. fatal: repository ‘xxxxxxx’ not found - 简书

git pull 或者 git push 时,为什么要每次都输入用户名和密码?-CSDN 博客

解决方法:

  1. 输入以下命令,得到一个文件的路径
1
git config --show-origin --get credential.helper

C:\Users\xdd>git config –show-origin –get credential.helper

file:C:/Users/xdd/.gitconfig store

  1. 打开该文件,删除下面关键字的两行,然后保存文件
1
2
[credential]
helper = store
  1. 输入下面命令,下次会保存用户名与密码,不然每次都要输入用户名与 Token
1
git config --global credential.helper store
  1. 可以提交文件了,第一次会弹窗提示输入 user 与 password, 需要注意虽然显示的是输入密码,但是只能输入 Token (Personal access tokens)

fatal: unable to access ‘https://github.com/xxxx/xxxx.git‘: Failed to connect to 127.0.0.1 port 8087: Connection refused

1
2
3
4
fatal: unable to access 'https://gitee.com/xxxx/xxxx.git/': Failed to connect to 127.0.0.1 port 24096 after 2021 ms: Couldn't connect to server

fatal: unable to access 'https://github.com/xxxx/xxxx.git': Failed to connect to 127.0.0.1 port 8087: Connection refused

解决方法:

1
2
3
4
5
git config --global --unset http.proxy
git config --global --unset https.proxy
git push origin master
输入用户名
输入密码

fatal: unable to access. Failed to connect to github.com port 443 after 21051 ms: Couldn’t connect to server

这是由于本机系统代理端口和 git 端口不一致导致的。解决办法:

  • 查看自己本机系统代理:设置—网络和 Internet—代理—地址:端口
  • 我的是 24906
1
2
3
git config --global http.proxy http://127.0.0.1:10809
git config --global https.proxy http://127.0.0.1:10809
git push origin master

Git 自动提交脚本

  1. 创建一个 git_push.sh 文件, 内容如下
  2. 双击 git_push.sh 文件,选择 git 程序执行即可
1
2
3
4
5
6
7
8
9
# @echo off
yuque-hexo sync
git pull
git add .
read -p "input commit message: " msg
git commit -m "$msg"
# git commit -m 'WIN10'
git push
read -p "===== git push ok, Type enter to exit. ===== " msg00

获取公钥与私钥

Windows

  1. win+R—cmd—记住此时的路径 — 输入下面代码
1
ssh-keygen -t rsa -C "你的 Gitee/Github 账户对应的邮箱"
  1. 回车三次
  2. 在 上面说的路径下有公钥与私钥文件
    1. 公钥:id_rsa.pub
    2. 私钥:id_rsa
  3. 在 Gitee 中添加公钥: 点自己头像—设置—SSH 公钥
  4. 在 Github 中添加公钥: 点自己头像—settings—SSH and GPG keys—New SSH key