1.git:日常开发协同git用的比较多,向仓库提交代码等等
一个有趣的学习git操作的网站:https://learngitbranching.js.org/
首先windows上,需要先下个git,然后在本地克隆仓库
git clone https://github.com/你的用户名/项目仓库名.git(在下图仓库克隆处复制地址)
在将本地仓库上传到github之前,需要设置username和email,因为github每次commit都会记录他们。
git config --global user.name "xxxx"
git config --global user.email xxxx@xx.com
然后将自己更新的文件放到本地仓库里即可
git add file添加文件时出现这样错误:
fatal: Not a git repository (or any of the parent directories): .git
提示说没有.git这样一个目录,解决办法如下:
git init
cd要上传的仓库路径,添加远程地址
git remote add origin git@github.com:yourName/yourRepo.git
提交,上传
1)接下来在本地仓库添加一些文件,比如hello.c(注意先在本地仓库添加该文件后执行下面命令)
git add hello.c
git commit -m "code commit"
2)上传到github
git push origin master
注意:git push命令将本地仓库推送到远程服务器,git pull相反。
注意:在上面提交命令后,可能会出现“因为您当前分支的最新提交落后于其对应的远程分支”等类似错误,
需要先获取远端更新并与本地合并,再git push。
这时候需要输入你的账户密码(也可以提前加上公钥)
输入信息后开始上传,上传成功后即可,合并操作如下:
git fetch origin //获取远程更新
git merge origin/master
git push
ubuntu上也是如此操作
你可以选择先添加密钥对
生成密钥 ssh-keygen -t rsa -C "youremail@mail.com"
其中"youremail@mail.com"是你的邮箱名。之后会要求确认路径和输入密码,我们使用默认的一路回车就行。
成功的话会在~/下生成.ssh文件夹,按住ctrl+h可以显示隐藏文件夹,点进去,打开id_rsa.pub,复制里面的key。
回到github,进入Account Setting,左边选择SSH Keys,Add SSH,title随便填,粘贴key.
验证是否成功,可以通过输入ssh -T git@github.com会有提示
2. ssh远程登录主机
本地主机端登录相关的其他命令:
- 如果服务器的SSH服务没有开启在22端口,那么SSH链接时则需要用
-p
指定端口(如202):
ssh -p 22用户名@主机IP
输入密码信息
同样可以通过添加公钥的方法免去认证,先生成密钥对
ssh-keygen -t rsa #-t表示选择类型,类型为rsa
# 登录远程服务器
ssh 用户名@ip
# 在服务器上创建.ssh文件夹
mkdir .ssh
# 为了保证.ssh文件夹的安全,应取消其他用户对文件夹的所有权限
chmod 700 .ssh
# 退出登录
exit
# 本地主机的公钥复制到远程服务器,作为已认证密钥
sudo cp id_rsa.pub目录 用户名@ip:../.ssh/authorized_keys