Git 最佳实践

一、OpenSSL SSL_connect

  • git clone/git pull/git push 报错

fatal: unable to access 'https://github.com/xxx.git/': OpenSSL SSL_connect: Connection was reset in connection to github.com:443

解决办法:这个办法可以让git速度更快。

git config --global --add remote.origin.proxy "127.0.0.1:(proxy http port number)"
//我的是
git config --global --add remote.origin.proxy "127.0.0.1:1080"

二、! [rejected] main -> main (fetch first)

由于在github上进行了修改,而本地还没有修改就push,所以才会出现这个错误。最好先pull下来,但是如果本地已经修改了,那么就用下面这个方法:

git push origin main --force

三、not found

  • git push 的时候,提示not found,很大可能是之前已经有git的就用户在该台电脑。最直接的办法就是:
  1. 控制面板>查看方式 > 小图标
  2. 凭据管理器 > windows凭据
  3. 删除相关凭据即可
  4. 之后在git push 的时候会提示输入新用户名和邮箱,按步骤提交就可以正常使用了

四、github一个仓库管理多个项目

Step1. github上创建一个仓库 test.co (名为test公司的项目)

Step2. git 到本地

git clone https://github.com/用户名/test.co.git

Step3. 进入 test.co 项目根目录,并创建项目1 project1 文件夹

1. 打开 Git Bash
2. mkdir project1 //创建项目1文件夹(用于存放项目1代码)

Step4. 进入 project1 根目录

1. cd project1 //进入项目1根目录
2. git branch //检查分支

Step5. 创建分支(特别注意:如果在当前的分支再创建分支,那么所创建的分支就是当前分支的子分支,而不是父分支的子分支。

git checkout project1

//或者创建+切换分支,可直接跳过Step6.
git checkout -b project1

Step6. 切换分支

git checkout project1
//如果是从远程仓库clone下来的,则
1. get fetch
2. git checkout <branchname>

参考

Step7. 检查当前分支状态并提交代码到本地仓库

git status

git add .

git commit -m "注释说明。。。"

Step8. push 到远程仓库 - - - 成功!

git push origin project1

注意:

1) git checkout 切换分支项目的时候,可能其他项目的某些文件暂时不可见,这是出于git的安全保护机制,只要再切换回去就可以看到项目的所有文件了。
2).gitignore文本文档文件是用于从模板列表中选择不跟踪的文件。,也就是不打算提交的文件(比如安装包node_modules)。参考链接

node_modules/**/*
.expo/*
npm-debug.*
*.jks
*.p8
*.p12
*.key
*.mobileprovision
*.orig.*
web-build/

# macOS
.DS_Store