ubuntu版本
qemu@qemu:~/linux-5.4.124$ cat /proc/version
Linux version 4.15.0-142-generic (buildd@lgw01-amd64-039) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12)) #146~16.04.1-Ubuntu SMP Tue Apr 13 09:27:15 UTC 2021
1. 创建仓库
关联git仓库
git config --global user.name “your name”
git config --global user.email “your email”
ubuntu16@ubuntu16-virtual-machine:~$ git config --global --list
ssh-keygen -C “your email” -t rsa
ubuntu16@ubuntu16-virtual-machine:~$ ssh -T git@gitee.com
Hi Admin! You've successfully authenticated, but GITEE.COM does not provide shell access.
把公钥拷贝到gitee,
ubuntu16@ubuntu16-virtual-machine:testGIT$ cat /home/ubuntu16/.ssh/id_rsa.pub
ubuntu16端创建本地库
git init
git add .
git commit -m "add test.c"
2.提交及下拉代码到远端git仓库
git remote add origin git@gitee.com:xxx
git remote -v
第一次提交前需要先下拉远端git仓库的代码
git pull --rebase origin master
再push
ubuntu16@ubuntu16-virtual-machine:testGIT$ git push origin master
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (4/4), 354 bytes | 0 bytes/s, done.
Total 4 (delta 1), reused 0 (delta 0)
remote: Powered by GITEE.COM [GNK-6.0]
其余下拉代码
git pull origin master
2. 删库
git remote remove origin xxx
问题
ko文件加载错误
在git管理的kernel中,每一次git commit之后,如果之编译modules(*.ko),ko insmod之后会出现
insmod: cannot insert ./test.ko’: Invalid module format (-1): Exec format error
原因是git commit之后,文件的一些信息变了,所以需要重新烧录kernel image。
所以可以不提交commit,编译modules(*.ko),然后就不会出现这个问题。
sign_and_send_pubkey
ubuntu16@ubuntu16-virtual-machine:testGIT$ ssh -T git@gitee.com
sign_and_send_pubkey: signing failed: agent refused operation
Permission denied (publickey).
ubuntu16@ubuntu16-virtual-machine:testGIT$ eval "$(ssh-agent -s)"
Agent pid 4417
ubuntu16@ubuntu16-virtual-machine:testGIT$ ssh-add
Identity added: /home/ubuntu16/.ssh/id_rsa (/home/ubuntu16/.ssh/id_rsa)
ubuntu16@ubuntu16-virtual-machine:testGIT$ ssh -T git@gitee.com
Hi ori! You've successfully authenticated, but GITEE.COM does not provide shell access.
ubuntu16@ubuntu16-virtual-machine:testGIT$
gitignorge无效
如果你不慎在创建.gitignore文件之前就push了项目,那么即使你在.gitignore文件中写入新的过滤规则,这些规则也不会起作用,Git仍然会对所有文件进行版本管理。
简单来说,出现这种问题的原因就是Git已经开始管理这些文件了,所以你无法再通过过滤规则过滤它们。
所以大家一定要养成在项目开始就创建.gitignore文件的习惯,否则一旦push,处理起来会非常麻烦。
ko文件的modeinfo带有版本号
ubuntu16@ubuntu16-virtual-machine:linux-5.4.125$ cat include/config/kernel.release
修改内核配置,不再自动添加内核git版本号
![](https://i-blog.csdnimg.cn/blog_migrate/0341c7d7505a64792c8aaea494f02de8.png)
获取kernel步骤
创建一个本地文件夹,随便创建一个文件。
- 创建本地git
git init
git config --global user.name “xxx”
git config --global user.email “xxx”
- 关联git仓库
git remote add origin xxx
git remote -v
- 从仓库拉取代码
git pull --rebase origin master
- 上传代码
git push origin master