只是稍微记录一下,如果能帮到大伙儿那更好,有不对的地方欢迎批评指正~
最近学习海思开发,之前没有过嵌入式学习,突然学这个海思,真的是太难了太难了太难了太难了太难了太难了太难了太难了…前几天又遇到了个bug,太难了,想摆烂了,就开始瞎学。然后了解到Git这个版本控制工具,说是程序员必备,可以轻松管理大小项目的各个版本,于是就学习了一下。
一、安装Git
有个Git的安装包,搜来搜去,官网进不去,忘了在哪搜到的了…分享出来…
链接:https://pan.baidu.com/s/1c7MX0-JzgtTNiSbJYAxMzA?pwd=fjjv 提取码:fjjv
安装后在任何目录右键应该都会有Git Bash Here
和Git GUI Here
这两个选项。选择Git Bash Here
打开控制终端,在里面输入Git命令就可以进行远程仓库的拉取和推送了。
二、创建远程仓库
Git Hub、Gitee(码云)、Coding是三个最常用的基于web的Git仓库、是开源的代码库、代码托管平台,利用Git可以把本地项目连接到远程服务器上,或者从远程服务器上获取项目的不同版本文件。
我用的Gitee,因为是国内的嘛,比较快。建一个仓库,我命名为HI3520DV400
,路径名好像是拉取到本地的文件夹名,我这里默认为hi3520-dv400
。
三、 Git 命令
稍微写一写:
###"----工作区---->暂存区---->分支---->远程仓库----"###
git status # 查询状态,红色-->在工作区;绿色-->在暂存区
git add # 将工作区文件添加到暂存区,后面加. 代表目录下所有文件,后面加文件名仅处理该文件
git commit # 将暂存区的文件提交到分支上,git commit -m "备注描述(最好是 第x次提交,方便追溯版本)"
git push # 将分支上的文件推送到远程仓库,git push origin master(推送到master分支上)
git clone # 将远程仓库的内容下载到本地(git clone + 仓库地址)
git pull # 将远程仓库做的变动拉取到本地(git pull origin master)
git branch # 查看分支状况,一般发布版本放在master,开发版本放在develop分支
# 通过 --git branch 分支名称-- 创建一个新的分支,在一个分支下看不到另一个分支下的内容
git checkout 分支名 # 用来切换到指定分支
# 将本地的develop文件推送到远程仓库的develop目录,先切换到develop目录,再用push推送
git checkout develop
git push origin develop:develop
git merge develop # 在master目录执行次命令,可将develop与master文件合并
四、自动推送
在某个你想存放远程仓库文件的文件夹右键打开Git终端,使用Git clone 仓库地址
把仓库下载到本地,然后每次仓库里面的内容改变(比如新建了个文件夹、文件内容修改了),想推送到仓库,都要右键一下,然后重复输入那几句命令,比较麻烦,于是想建个脚本,自动推送。之前学Linux,也接触了一些shell命令,,,,,在本地仓库目录下新建个文本,我的是xxx_auto_git
,文本里加入以下内容:
#!/bin/bash
git status
echo "####### 开始自动Git #######"
current_time=$(date "+%Y/%m/%d -%H:%M:%S") # 获取当前时间
echo ${current_time} # 显示当前时间
git add .
git commit -m "modified ${current_time}" # 远程仓库可以看到是什么时间修改的...
git push origin master
echo "####### 自动Git完成 #######"
sleep 2s
保存,改后缀为.sh
,就完了…
五、测试
修改本地仓库的一些内容,双击脚本…
弹出窗口:
远程仓库看到效果:
六、结语
只是测试一下,没想到成功了,做的很粗糙,有很大空间可以完善,因为也是刚学这个Git,所以后面慢慢完善(加分支,推送到不同分支,或者加入拉取…只是构想)~
摆烂还是不行,难也要坚持,继续学海思,加油!