GitHub:修订间差异
跳到导航
跳到搜索
(→Error) |
|||
(未显示同一用户的15个中间版本) | |||
第1行: | 第1行: | ||
===GitHub Person=== | ===GitHub Person=== | ||
*https://github.com/ldscfe | * https://github.com/ldscfe | ||
*https://github.com/ldscf | * https://github.com/ldscf | ||
=== 价格计划(免费版) === | === 价格计划(免费版) === | ||
第42行: | 第42行: | ||
=== Repository === | === Repository === | ||
# | ==== clone 远程仓库 ==== | ||
# 需要在当前 repositories 下 settings/Deploy keys 中有相应 RSA publickey | |||
# 客户端中 .ssh 中有相应的 id_rsa | |||
git clone [email protected]:ldscfe/pangolin.git | git clone [email protected]:ldscfe/pangolin.git | ||
.-OR-. | |||
# 记录 token: Settings -> Developer Settings -> Personal access tokens -> tokens(classic) | |||
git clone https://<Token Name>:<Token>@github.com/ldscfe/devudefj2.git | |||
==== 刷新 ==== | |||
git pull | git pull | ||
==== 增加文件 ==== | |||
git status # 查看文件状态 | |||
git add $FN | |||
git | git add . # 所有 | ||
==== 提交 ==== | |||
git commit - | # 需要 git add | ||
git commit -m "comment content" | |||
git push | git push | ||
# | ==== 去除文件&目录 ==== | ||
# .gitignore | |||
log/ | |||
target/ | |||
src/test/ | |||
.DS_Store | |||
.gitignore | |||
# 已 git add 的文件,在 .gitignore 中标识无效 | |||
# Creating remote repositories | git rm -f ${FN} # 已 git add 的文件,删除后.gitignore 中标识有效 | ||
==== 分支 ==== | |||
# 分支之间切换、恢复文件、创建新分支等 | |||
git checkout <branch-name> # 从当前分支切换到指定的分支 <branch-name>, 或主分支:master | |||
git checkout - # 快速切换回前一个分支 | |||
git checkout -- <file> # 将指定文件 <file> 恢复到最新的提交状态,丢弃所有未提交的更改 | |||
git checkout -b <new-branch-name> # 创建一个新分支 <new-branch-name> 并切换 | |||
... | |||
# 推送本地和远程都存在的同名分支 | |||
git config --global push.default matching | |||
==== Creating remote repositories ==== | |||
git remote add ldscfe_cpp [email protected]:ldscfe/cpp.git | git remote add ldscfe_cpp [email protected]:ldscfe/cpp.git | ||
git remote add ldscfe_pangolin [email protected]:ldscfe/pangolin.git | git remote add ldscfe_pangolin [email protected]:ldscfe/pangolin.git | ||
git remote add ldscfe_udefpy3 [email protected]:ldscfe/udefpy3.git | git remote add ldscfe_udefpy3 [email protected]:ldscfe/udefpy3.git | ||
#You can use the command git remote set-url to change a remote's URL. | |||
git remote set-url <REMOTE_URL> | |||
=== Public Effect === | |||
settings -> Danger Zone -> Change visibility | |||
* The code will be visible to everyone who can visit https://github.com | |||
* Anyone can fork your repository. | |||
* All push rulesets will be disabled. | |||
* Your changes will be published as activity. | |||
* Actions history and logs will be visible to everyone. | |||
=== Example === | |||
DT=`date '+%Y/%m/%d %H:%M:%S'` | |||
git add . | |||
git commit -m "User-defined class libraries, $DT" | |||
git push | |||
之前最好用 git status 确认一下。 | |||
git | |||
=== Error === | === Error === | ||
==== RSA 证书无或错误 ==== | |||
ERROR: Permission to XXX/XXX.git denied to deploy key | |||
fatal: Could not read from remote repository. | |||
-.OR.- | |||
[email protected]: Permission denied (publickey). | [email protected]: Permission denied (publickey). | ||
fatal: Could not read from remote repository. | fatal: Could not read from remote repository. | ||
# repository 下 settings/Deploy keys 中有相应 RSA publickey | |||
# 客户端中 .ssh 中有相应的 id_rsa(MacOS 使用 ssh-add) | |||
# 不同的 repository 使用不同的 RSA publickey | |||
==== 分支冲突,本地版本陈旧 ==== | |||
Automatic merge failed; fix conflicts and then commit the result. | |||
丢弃本地分支内容 | |||
git reset --hard origin/master | git reset --hard origin/master | ||
==== 首次推送 ==== | |||
clone 后,首次 git push 出现: | |||
No refs in common and none specified; doing nothing. | |||
Perhaps you should specify a branch. | |||
未指定推送到哪个分支,一般发生在首次推送。 | |||
git push origin master | |||
==== git init ==== | |||
fatal: Not a git repository (or any of the parent directories): .git | |||
git remote add 时出现,原因:未 git init | |||
==== repository 不存在或无权限 ==== | |||
git pull 时出现: | |||
ssh_exchange_identification: Connection closed by remote host | |||
fatal: Could not read from remote repository. | |||
Please make sure you have the correct access rights and the repository exists. | |||
[[分类:Develop]] | [[分类:Develop]] | ||
[[分类:Doc]] | [[分类:Doc]] |
2024年11月4日 (一) 11:20的最新版本
GitHub Person
价格计划(免费版)
- Free
- The basics for individuals and organizations
- Unlimited public/private repositories
- Host open source projects in public GitHub repositories, accessible via web or command line. Public repositories are accessible to anyone at GitHub.com.
- 2,000 automation minutes/month
- Free for public repositories
- Use execution minutes with GitHub Actions to automate your software development workflows. Write tasks and combine them to build, test, and deploy any code project on GitHub.
- 500MB of Packages storage
- Free for public repositories
- Host your own software packages or use them as dependencies in other projects. Both private and public hosting available.
- New Issues & Projects (beta)
- Community support
- 免费(个人)版支持无限个数的私有(或公有)仓库, 每月2000分钟的自动构建时长, 单仓库最大 500M.
- 查看详情: https://github.com/pricing
- CI/CD,全称:持续集成 (Continuous Integration) ,持续部署 (Continuous Deployment) ,是开发流程的自动化利器
Git
- 当前机器中有 id_rsa
- 远程 github 中已加载 id_rsa.public(settings -> Access -> SSH &GPG keys)
INIT
- git init
- 在当前目录下建立 .git 目录
- clone 的目录在此目录下
git config --global user.name ldscfe git config --global user.email [email protected] git config --global color.ui true # git status等命令自动着色
# git config --list
# 自动判断提交位置(clone多个库) git config --global push.default matching
Repository
clone 远程仓库
# 需要在当前 repositories 下 settings/Deploy keys 中有相应 RSA publickey # 客户端中 .ssh 中有相应的 id_rsa git clone [email protected]:ldscfe/pangolin.git .-OR-. # 记录 token: Settings -> Developer Settings -> Personal access tokens -> tokens(classic) git clone https://<Token Name>:<Token>@github.com/ldscfe/devudefj2.git
刷新
git pull
增加文件
git status # 查看文件状态 git add $FN git add . # 所有
提交
# 需要 git add git commit -m "comment content" git push
去除文件&目录
# .gitignore log/ target/ src/test/ .DS_Store .gitignore # 已 git add 的文件,在 .gitignore 中标识无效 git rm -f ${FN} # 已 git add 的文件,删除后.gitignore 中标识有效
分支
# 分支之间切换、恢复文件、创建新分支等 git checkout <branch-name> # 从当前分支切换到指定的分支 <branch-name>, 或主分支:master git checkout - # 快速切换回前一个分支 git checkout -- <file> # 将指定文件 <file> 恢复到最新的提交状态,丢弃所有未提交的更改 git checkout -b <new-branch-name> # 创建一个新分支 <new-branch-name> 并切换 ... # 推送本地和远程都存在的同名分支 git config --global push.default matching
Creating remote repositories
git remote add ldscfe_cpp [email protected]:ldscfe/cpp.git git remote add ldscfe_pangolin [email protected]:ldscfe/pangolin.git git remote add ldscfe_udefpy3 [email protected]:ldscfe/udefpy3.git #You can use the command git remote set-url to change a remote's URL. git remote set-url <REMOTE_URL>
Public Effect
settings -> Danger Zone -> Change visibility
- The code will be visible to everyone who can visit https://github.com
- Anyone can fork your repository.
- All push rulesets will be disabled.
- Your changes will be published as activity.
- Actions history and logs will be visible to everyone.
Example
DT=`date '+%Y/%m/%d %H:%M:%S'` git add . git commit -m "User-defined class libraries, $DT" git push
之前最好用 git status 确认一下。
Error
RSA 证书无或错误
ERROR: Permission to XXX/XXX.git denied to deploy key fatal: Could not read from remote repository. -.OR.- [email protected]: Permission denied (publickey). fatal: Could not read from remote repository.
- repository 下 settings/Deploy keys 中有相应 RSA publickey
- 客户端中 .ssh 中有相应的 id_rsa(MacOS 使用 ssh-add)
- 不同的 repository 使用不同的 RSA publickey
分支冲突,本地版本陈旧
Automatic merge failed; fix conflicts and then commit the result.
丢弃本地分支内容
git reset --hard origin/master
首次推送
clone 后,首次 git push 出现: No refs in common and none specified; doing nothing. Perhaps you should specify a branch.
未指定推送到哪个分支,一般发生在首次推送。
git push origin master
git init
fatal: Not a git repository (or any of the parent directories): .git
git remote add 时出现,原因:未 git init
repository 不存在或无权限
git pull 时出现: ssh_exchange_identification: Connection closed by remote host fatal: Could not read from remote repository.
Please make sure you have the correct access rights and the repository exists.