关于github上一些单词的使用
Posted lingfeng647
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于github上一些单词的使用相关的知识,希望对你有一定的参考价值。
Git 和 GitHub 已经成为了开发者的基础工具,尤其是参与开源软件开发时经常会使用它们。但是在 Git 和 GitHub 使用过程中遇到的很多术语并没有标准的或约定俗成的中文译名,因此,我根据 GitHub 、Git 等文档,并结合我的学习理解,收集整理了 Git 和 GitHub 中一些常用术语的中文译名及其解释。
在使用github时,一些单词的含义可能不清楚,下面是笔者学习过程中的理解
(按字母序排列)
B
- blame 追溯文件每行的最新修改,一般会显示修订、作者和时间。这很有用,例如,可以跟踪何时添加了功能,或者哪个提交导致了特定漏洞。
- branch 分支是仓库的平行版本。它包含在仓库中,但不影响主要或 master 分支,可让你自由工作而不中断“即时”版本。在执行所需的更改后,可以将分支合并回 master 分支以发布更改。
C
- checkout 在命令行上使用 git checkout 创建新分支,将当前的工作分支更改为不同的分支
- clean 清除
- clone 克隆存在于计算机上而非网站服务器其他位置的仓库副本
- code owner 作者
- collaborator 协作者
- commit 提交或“修订”,即对一个文件(或一组文件)的个别更改——通常提交到本地git库中
- commit author 进行提交的用户。
- commit message 随附于提交的简短描述性文字。
- contributor 贡献者,对仓库没有协作者权限但参与过项目
D
- default branch 仓库中的基本分支,除非你指定不同的分支,否则会自动对它完成所有拉取请求和代码提交。此分支通常称为 master。
- diff 差异是指两个提交之间的更改或保存的更改之间的区别,它将从视觉上描述文件自上次提交后添加或删除的内容。
F
- fetch 在使用 git fetch 时,你将从远程仓库添加更改到本地工作分支,而不提交它们。与 git pull 不同,提取可让你在更改提交到本地分支之前先进行审查。
- force push 强制推送
- fork 复制克隆仓库(该fork项目独立存在)
I
- issue 事务卡片,即提问题讨论
M
- master 默认开发分支。
- merge 合并是从一个分支(在相同的仓库中或来自一个分叉)提取更改,然后将其应用到另一个分支。
- merge conflict 合并的分支之间发生的差异。
- merge request 合并请求
O
- origin 默认上游仓库
P
- private repository 私有仓库仅对仓库所有者和所有者指定的协作者可见。
- profile 个人资料
- public repository 公共仓库
- pull 拉取是指提取与合并更改
- push 推送是指将提交的更改发送到 http://GitHub.com 上的远程仓库
- push a branch 推送分支
R
- repository 仓库
- rebase 变基——将一系列更改从一个分支重新应用到不同的基本分支,并将该分支的头部重置为结果
- release 发布
- remote repository 远程仓库
- repository 仓库是 GitHub 最基本的元素,最容易被想象成项目的文件夹。
- resolve 手动修复自动合并失败的操作。
- revert 恢复 GitHub 上的拉取请求
U
- URLremote URL 存储代码的位置:GitHub、其他用户分支甚至不同服务器上的仓库。
- upstream branch 上游分支,即合并到所述分支的默认分支
S
- star 收藏
W
- watch 关注
小节:边学英语边学github吧~一起进步!
GitHub使用整理——关于上传Keil工程一些注意的点
git上传警告warning: LF will be replaced by CRLF
在上传keil工程时,会遇到warning: LF will be replaced by CRLF警告;
warning: LF will be replaced by CRLF in <file-name>. The file will have its original line endings in your working directory.
同时下面这句话很重要,即“在工作区里,这个文件会保持它原本的换行符。”
如何理解LF和CRLF:
1.LF和CRLF都是换行符,在各操作系统下,换行符是不一样的,Linux/UNIX下是LF,而Windows下是CRLF,早期的MAC OS是CR,后来的OS X在更换内核后和UNIX一样也是LF.
这种不统一确实对跨平台的文件交换带来了麻烦。虽然靠谱的文本编辑器和 IDE 都支持这几种换行符,但文件在保存时总要有一个固定的标准啊,比如跨平台协作的项目源码,到底保存为哪种风格的换行符呢?
2.Git 由大名鼎鼎的 Linus 开发,最初只可运行于 *nix 系统,因此推荐只将 UNIX 风格的换行符保存入库。但它也考虑到了跨平台协作的场景,并且提供了一个“换行符自动转换”功能。
- 安装好 GitHub 的 Windows 客户端之后,这个功能默认处于“自动模式”。
- 当你在签出文件时,Git 试图将 UNIX 换行符(LF)替换为 Windows 的换行符(CRLF);当你在提交文件时,它又试图将 CRLF 替换为 LF。
所以Git在拉取代码的时候,git会自动将代码之中与你当前系统不同的换行方式自动转换成当前系统的换行方式。
这样一来在提交代码的时候,git会认为你未修改内容的文件也认为是修改过的,然后提示你warning: LF will be replaced by CRLF这样的信息。
有效的解决方法
如果设置core.autocrlf = false
,那么很可能会出现CRLF和LF混合的情况,这样会导致一些问题,例如git diff
失去功能,会发现很多行代码并没有修改,然而被认为是修改过了。
首先core.autocrlf = true
在windows上才是正确的选择,那么如何避免warning呢?还要有以下几个步骤:
- 添加.gitattributes
- 设置
core.safecrlf = true
- 使用dos2unix、notepad++等工具来将LF转换成CRLF
以上资料转载自:
https://www.cnblogs.com/sminocence/p/9357209.html
关于git存储空间的注意:
Git本身没有设置用户的磁盘额度,但是建议每个项目的大小保持在1G左右,当你超过75G时会产生警告,且存储库的硬限制为100GB,另外,git严格限制超过100 MB的文件;
Git没有充分设计用作备份工具。但是,有许多专门用于执行值得检查的备份的解决方案,包括Arq,Carbonite,Mozy和CrashPlan;
导致Git存储库变得庞大和膨胀的另一件事是外部依赖,最好将这些文件保留在存储库之外,而是使用包管理器,大多数流行语言都附带包管理器,可以为您执行此操作。Bundler,Node的软件包管理器和Maven。它们每个都支持直接使用Git存储库,因此您不需要预先打包的源;
Git不建议在您的存储库中分发已编译的代码和预打包的版本;
以上资料来自:
https://help.github.com/en/articles/what-is-my-disk-quota
关于Keil工程的精简:
首先清除掉keil工程的编译文件,可以通过以下的批处理实现:
::删除Keil编译产生的一些垃圾文件 ::删除Code Warrior编译产生的一些垃圾文件 del *.bak /s del *.ddk /s del *.edk /s del *.lst /s del *.lnp /s del *.mpf /s del *.mpj /s del *.obj /s del *.omf /s ::del *.opt /s ::不允许删除JTAG的设置 del *.plg /s del *.rpt /s del *.tmp /s del *.__i /s del *.crf /s del *.o /s del *.d /s del *.axf /s del *.tra /s del *.dep /s del JLinkLog.txt /s del *.iex /s del *.htm /s del *.sct /s del *.map /s del *._2i /s del *.L2P /s del *.FED /s del *.elf /s del *.args /s del *.mk /s del *.local /s exit
将以上的代码新建txt文件,拷贝进去后将文件名改为name.bat放入到keil工程中;
关于STM32-F4外设库的精简:
基于原子哥的工程模板,对采用外设库的F4工程进行精简;
删除外设库文件,保留下基本的外设库文件只有以下几个:
misc.c misc.h //NVIC配置 stm32f4xx_rcc.c stm32f4xx_rcc.h //时钟配置 stm32f4xx_gpio.c stm32f4xx_gpio.h stm32f4xx_usart.c stm32f4xx_usart.h //串口配置要用
同时修改stm32f4xx_conf.h文件中的外设包含关系:
/* Includes ------------------------------------------------------------------*/ /* Uncomment the line below to enable peripheral header file inclusion */ //#include "stm32f4xx_adc.h" //#include "stm32f4xx_crc.h" //#include "stm32f4xx_dbgmcu.h" //#include "stm32f4xx_dma.h" //#include "stm32f4xx_exti.h" //#include "stm32f4xx_flash.h" #include "stm32f4xx_gpio.h" //#include "stm32f4xx_i2c.h" //#include "stm32f4xx_iwdg.h" //#include "stm32f4xx_pwr.h" #include "stm32f4xx_rcc.h" //#include "stm32f4xx_rtc.h" //#include "stm32f4xx_sdio.h" //#include "stm32f4xx_spi.h" //#include "stm32f4xx_syscfg.h" //#include "stm32f4xx_tim.h" #include "stm32f4xx_usart.h" //#include "stm32f4xx_wwdg.h" #include "misc.h" /* High level functions for NVIC and SysTick (add-on to CMSIS functions) */
#if defined(STM32F40_41xxx) //#include "stm32f4xx_cryp.h" //#include "stm32f4xx_hash.h" //#include "stm32f4xx_rng.h" //#include "stm32f4xx_can.h" //#include "stm32f4xx_dac.h" //#include "stm32f4xx_dcmi.h" //#include "stm32f4xx_fsmc.h" #endif /* STM32F40_41xxx */
以上是关于关于github上一些单词的使用的主要内容,如果未能解决你的问题,请参考以下文章