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没有充分设计用作备份工具。但是,有许多专门用于执行值得检查的备份的解决方案,包括ArqCarboniteMozyCrashPlan

导致Git存储库变得庞大和膨胀的另一件事是外部依赖,最好将这些文件保留在存储库之外,而是使用包管理器,大多数流行语言都附带包管理器,可以为您执行此操作。BundlerNode的软件包管理器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 */

原文地址:https://www.cnblogs.com/lpfdezh/p/11050451.html

时间: 2024-09-30 09:37:29

GitHub使用整理——关于上传Keil工程一些注意的点的相关文章

使用Eclipse上传java工程到github

使用Eclipse上传Java工程到github 1.登录github账户,Create a new repository(创建一个知识库)名称为:eclipse_upload 创建完成之后,跳转到以下界面. 注意:https://github.com/heyangyi/eclipse_upload.Git地址是待会使用eclipse上传代码到知识库的地址. 2.打开eclipse创建一个名为:eclipse_upload_git的javaWeb项目.添加index.jsp页面,在body部分添

Mac下 Windows 7 虚拟机成功搭建SVN服务器后如何与Xcode建立联系,并上传原始工程的详细步骤

---恢复内容开始--- 本篇文章主要讲述Mac下 Windows 7 虚拟机成功搭建SVN服务器后如何与Xcode建立联系,并上传原始工程的详细步骤. 关于如何配置Mac下虚拟机可以参考: http://www.cnblogs.com/syc2016/articles/5151056.html 关于如何在Mac下Windows 7 虚拟机下配置SVN服务器可参考: http://www.cnblogs.com/syc2016/p/5151420.html 一.操作步骤 1.打开虚拟机上的Vis

上传本地工程到远程Git仓库

上传本地工程到远程Git仓库 首先登录远程Git仓库,我使用的OSChina的码云,手动创建对应的项目工程 进入本地的工程目录下 按如下顺序执行相关命令: git init --Create an empty Git repository or reinitialize an existing one echo "# project name" >> README.md git remote add origin https://git.oschina.net/person

最常用的Github创建仓库、上传命令

1.打开Github,点击New,新建一个仓库 下面我以仓库名为Test1 为例,勾选README,最后点击Create Repository. 2.之后点击Clone or download,复制创建的github链接. 3.在本地的自己新建一个文件夹,右键,选择Git Bash Here 4.输入命令 git clone + 刚才复制的github链接,然后回车, 5.此操作结束之后,你的文件夹便会多出来和你刚才在github里面创建的仓库同名的文件 6.用命令进入该文件 cd + 文件名

GitHub入门:如何上传与下载工程?

由于经常要在家写代码,所以需要有个能够方便访问代码管理工具.最近尝试了一下GitHub.经过了一翻纠结之后,基本上掌握了他的使用方式.  要使用GitHub需要首先在其网站上进行注册.其官方网站是https://github.com/.注册的流程在这里就不多少了,大家按照它的提示,一步一步操作就可以了.执行完注册流程之后,需要在本地安装一个git bash,通过这个在控制台完成对代码的管理.  首先,我们需要新建一个Repository,并在这个Repository中保存我们的代码.点击首页右侧

GitHub 的设置&amp;代码上传

使用GitHub也有段时间了,想起第一次用GitHub也是挺曲折的,从配置秘钥到上传,但是感觉还挺麻烦,就想总结一下如何配置SSH秘钥以及如何上传代码至GitHub,这里所有的操作都是在OS X系统下的进行,本人使用的时间不是很长,所有如果有更好的用法或者解说错误,请告知一下,Thanks() GitHub验证方式 上传GitHub的时候是需要身份验证的,而验证身份的方式有两种: 1. 通过用户名以及密码验证 2. 通过SSH秘钥验证 以上两种方式都可以进行验证,不过个人而言,还是比较喜欢用SS

Git与GitHub(利用git上传本地文件到GitHub上面)

GitHub就是代码仓库(管理代码的工具)可以共享给所有人 Git就是从GitHub上提取文件或者将本地文件上传到GitHub的工具(等同于SVN) 利用Git上传项目 步骤一:(用户和邮箱为你github注册的账号和邮箱) $ git config --global user.name "startstudysmile" $ git config --global user.email "[email protected]" 步骤二:设置SSH key $ ssh

在eclipse中使用github进行代码的上传操作以及如何建立分支

Eclipse或STS对github进行基本操作 一.Github上传代码 1. 首先新建一个maven或者其他java项目. 接着把本地默认的git存放项目地址改变一下.   以上git项目存放地址根据自己需要,位置任意存放. 右键点击项目,按照图示操作      二.现在以上操作是建立git仓库,下面开始上传代码到github上进行托管 但是在这之前,读者需要注册一个github账号(网上教程很多,笔者这里就不细说) 1.右键点击项目,选中Team->commit    Classpath和

在github中使用pages上传自己的网页

转载自:http://www.cnblogs.com/lijiayi/p/githubpages.html 学了前端小半年,如今写了个自己的网页想要去应聘,却发现部署很麻烦,部署到阿里云之类,买域名啊啥的还要收费,说贵也不贵,但我就是傲娇~ google一下了解到Github有一个Github pages的功能可以搭建博客或者托管网页,而且免费耶,搜了下教程,猛地一看感觉步骤也不是很麻烦,所以就用这个了! 教程一大堆,却没有几个能看懂的,问题一:90%的都在讲解如何搭建博客,和我想要将自己的网页