ubuntu 下 使用 Git 维护 linux kernel版本
学习linux内核一段时间,意识到内核的版本需要严格控制。利用Git工具可以很轻松的完成不同开发人员不同模块之间的代码融合与版本控制 。
1. 首先,安装Git .可以参考廖雪峰的博客 https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
针对Windows版本安装好了git 之后,需要设置系统环境变量,把HOME对应的环境变量,设置为,C:/user/your_account
2. 然后 新建一个目录 mkdir my_git 新建本地git工程
root@ubuntu:# cd my_git
root@ubuntu:# git init
2.1 如果希望托管GIT工程到远程服务器,比如Github,首先需要在github上创建一个空的repo仓库。获取仓库的url:http:xxxx.git
2.2 如果远程服务器上已经有对应的Repo仓库,可以忽略 2,2.1 这两步
3.如果服务器上已经有了一个git工程 只需要把服务器端的工程拉下来就可以。
git clone root@172.16.11.25:/media/iecu/lancelot/Rcar-H3-Git/
(拉取想要的分支文件)
origin
-》 i-ECU-B1
> i-ECU-B2
git pull <远程主机> <远程分支>:<本地分支>
root@ubuntu:# git pull origin master (git pull origin i-ECU-B2)
3.1如果希望把本地git init的 仓库同步到服务器端可以:
root@ubuntu:# git remote add origin root@172.16.11.25:/media/iecu/lancelot/Rcar-H3-Git/
(root@172.16.....就是服务器仓库的url:xxxx.git)
(推上想要的分支文件)
$ git push <远程主机名> <本地分支名>:<远程分支名>
root@ubuntu:# git push -u origin master
(git push -u origin i-ECU-B2)
hutian@ubuntu:~/git-B2$ git branch -a
* master
remotes/origin/i-ECU-B2
4. 这时会在my_git 上看到从服务器上pull下来的工程,接下来就是开发人更新自己的代码和注释了
root@ubuntu:#vim kernel-source/drivers/gpu/drm/bridge/dw-hdmi.c
root@ubuntu:#git add ./kernel-source/drivers/gpu/drm/bridge/dw-hdmi.c
root@ubuntu:# git commit -m "set hdmi connector detect always connected"
5. 对工程中的文件删除代码
首先删除文件夹或者文件
root@ubuntu:# rm -rf Rcar-H3-Git/
然后删除git中的备份文件
root@ubuntu:# git rm Rcar-H3-Git/
同步commit,更新git
root@ubuntu:# git commit -m "clear wrong Rcar-H3-Git"
6.恢复修改之前的工程代码
查看git 的 logs
root@ubuntu:# git log
root@ubuntu:/home/hutian/git# git log
commit d3381d5b0465a34ef70fd56e50243d14f2305dd7
Author: hutian <@qq.com>
Date: Tue Mar :: +
回到之前一个更新commit的状态 (回到前两个用HEAD^^)
root@ubuntu:# git reset --hard HEAD^
回到特定的commit 利用log中的commit ID d3381d5b.....(只需要前几个字母就好)
root@ubuntu:# git reset --hard d3381d5b
完成代码恢复功能
7.同步本地git工程和服务器端git工程
$ git push <远程主机名> <本地分支名>:<远程分支名>
root@ubuntu:# git push -u origin master
(git push -u origin i-ECU-B2)
hutian@ubuntu:~/git-B2$ git branch -a
* master
remotes/origin/i-ECU-B2
上面命令表示,将本地的master分支推送到origin主机的master分支。如果后者不存在,则会被新建。
origin是一个远程厂库地址
至此 ,完成简单的Git代码管理功能
方式一:修改远程仓库地址
【git remote set-url origin URL】 更换远程仓库地址,URL为新地址。
方式二:先删除远程仓库地址,然后再添加
【git remote rm origin】 删除现有远程仓库
【git remote add origin url】添加新远程仓库
git remote -v 】查看远程仓库
查看分支 git branch -a 或者-r
删除本地分支:git branch -d 非空 用 -D
跳转分支 用 : git checkout xx分支
创建新分支 : git checkout -b 新分支,在xx分支下
上传到新分支 :git push origin camera_v1:camera_v1
删除远程fromdevelop分支 git push origin :fromdevelop
解决GIT 上传下载Bash 脚本错误的问题 ,git config --global core.autocrlf false
未完待续。。。。
最新文章
- VSS每次打开都需要服务器账号和密码的解决方法
- Android中什么时候使用get和post 以及他们的优缺点!!
- 使用oracle utl_http包需要注意的事项
- Log4j 配置 的webAppRootKey参数问题
- 转:java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
- idea好用插件(一)
- http.request的请求
- iOS 百度地图计算两个点时间的距离
- docker安装Oracle 12c
- Python内置函数(19)——eval
- [转载]关于在Linux下上传代码至Github
- 将代码上传版本库gitee
- 远程连接bat
- C# 从配置文件中读取/写入信息
- vi 操作
- npm全局目录修改
- 搜狐eHR团队-曾经一起奋斗过的~
- (转)linux top命令中各cpu占用率含义及案例分析
- OO——电梯作业总结
- 深入理解net core中的依赖注入、Singleton、Scoped、Transient(一)