# 安装git
sudo apt-get install git
# 安装openssh服务器
# 如不成功,可参考: http://blog.csdn.net/feliciafay/article/details/6561414
sudo apt-get install openssh-server
sudo do-release-upgrade
# 下面命令可测试是否安装成功:
ssh localhost # 远程登入
exit # 登出
cd ~/.ssh
ls # 没有找到ssh的公钥、密钥文件: id_rsa id_rsa.pub
# 用下面命令生成 公钥、密钥文件
ssh-keygen # 一般连续回车就行了,也可能要输入y,详情见: http://doc.linuxpk.com/4240.html
# 将公钥内容拷入临时文件key.txt,待会儿要用
# cat id_rsa.pub > ~/key.txt
# 进入: https://github.com/,注册免费帐户:
# Signup and Pricing -> create a free account
# 创建新仓库,命名为: HelloWorld,现在里面没文件
# Create a New Repo: Repository name: HelloWorld
# 将key.txt内容拷入: Key
# Account Settings -> SSH Keys -> Add SSH Key -> Add Key
# 经过实践得知:一个用户(主机),只能同时用一个账户
# 因为相同的公钥不能填入到不同的账户的SSH Keys中
# 于是,我们只能反复生成公钥、密钥来切换帐户
# 进入HelloWorld仓库
# Code -> Quick setup -> SSH
# 复制远程仓库地址: git@github.com:yanrk/HelloWorld.git
cd ~
mkdir Git
cd Git
# 将远程仓库拷入本机当前目录
git clone git@github.com:yanrk/HelloWorld.git
# 如果上面git命令出现如下错误:
# Agent admitted failure to sign using the key.
# Permission denied (publickey).
# fatal: The remote end hung up unexpectedly
# 可以用下面命令解决:
# ssh-add ~/.ssh/id_rsa
# 下面继续
ls # 可以发现在Git中多了一个新文件夹: HelloWorld
# 进入HelloWorld中
cd HelloWorld
# 新建一个HelloWorld.cpp文件
cat > HelloWorld.cpp
#include <iostream>
int main(int argc, char * argv[])
{
std::cout << "Hello World" << std::endl;
return(0);
}
^Z (CTRL+Z)
# 编译这个文件,生成HelloWorld.out可执行文件
g++ -o HelloWorld.out HelloWorld.cpp
# 将当前目录中所有修改过的文件从工作目录提交到缓存区
git add *
# 将文件从缓存区提交到HEAD
git commit -m "commit HelloWorld.cpp and HelloWorld.out"
# 将文件从HEAD提交到远程仓库
git push origin master
# 这时,我们可以再刷新,看看我们在github上的HelloWorld仓库
# 可以发现,刚才的文件已经提交到HelloWorld仓库了
# git 简易教程,详见: http://rogerdudler.github.com/git-guide/index.zh.html
# 我们再来取一下HelloWorld仓库的文件
# 看看我们的文件是否真的更新成功了 (其实没必要,当前仅为熟悉命令)
# 这次我们还是放入一个新文件夹
mkdir down_git
cd down_git
git clone git@github.com:yanrk/HelloWorld.git
ls
cd HelloWorld
cat HelloWorld.cpp
./HelloWorld.out
# 测试完毕,一切正常
# 删除多余的备份 down_git
pwd
cd ../..
rm -r down_git # rm -r path 可以删除非空的文件夹
# 差点忘了,还有一个不错的github学习网页: http://www.worldhello.net/gotgithub/index.html
sudo apt-get install git
# 安装openssh服务器
# 如不成功,可参考: http://blog.csdn.net/feliciafay/article/details/6561414
sudo apt-get install openssh-server
sudo do-release-upgrade
# 下面命令可测试是否安装成功:
ssh localhost # 远程登入
exit # 登出
cd ~/.ssh
ls # 没有找到ssh的公钥、密钥文件: id_rsa id_rsa.pub
# 用下面命令生成 公钥、密钥文件
ssh-keygen # 一般连续回车就行了,也可能要输入y,详情见: http://doc.linuxpk.com/4240.html
# 将公钥内容拷入临时文件key.txt,待会儿要用
# cat id_rsa.pub > ~/key.txt
# 进入: https://github.com/,注册免费帐户:
# Signup and Pricing -> create a free account
# 创建新仓库,命名为: HelloWorld,现在里面没文件
# Create a New Repo: Repository name: HelloWorld
# 将key.txt内容拷入: Key
# Account Settings -> SSH Keys -> Add SSH Key -> Add Key
# 经过实践得知:一个用户(主机),只能同时用一个账户
# 因为相同的公钥不能填入到不同的账户的SSH Keys中
# 于是,我们只能反复生成公钥、密钥来切换帐户
# 进入HelloWorld仓库
# Code -> Quick setup -> SSH
# 复制远程仓库地址: git@github.com:yanrk/HelloWorld.git
cd ~
mkdir Git
cd Git
# 将远程仓库拷入本机当前目录
git clone git@github.com:yanrk/HelloWorld.git
# 如果上面git命令出现如下错误:
# Agent admitted failure to sign using the key.
# Permission denied (publickey).
# fatal: The remote end hung up unexpectedly
# 可以用下面命令解决:
# ssh-add ~/.ssh/id_rsa
# 下面继续
ls # 可以发现在Git中多了一个新文件夹: HelloWorld
# 进入HelloWorld中
cd HelloWorld
# 新建一个HelloWorld.cpp文件
cat > HelloWorld.cpp
#include <iostream>
int main(int argc, char * argv[])
{
std::cout << "Hello World" << std::endl;
return(0);
}
^Z (CTRL+Z)
# 编译这个文件,生成HelloWorld.out可执行文件
g++ -o HelloWorld.out HelloWorld.cpp
# 将当前目录中所有修改过的文件从工作目录提交到缓存区
git add *
# 将文件从缓存区提交到HEAD
git commit -m "commit HelloWorld.cpp and HelloWorld.out"
# 将文件从HEAD提交到远程仓库
git push origin master
# 这时,我们可以再刷新,看看我们在github上的HelloWorld仓库
# 可以发现,刚才的文件已经提交到HelloWorld仓库了
# git 简易教程,详见: http://rogerdudler.github.com/git-guide/index.zh.html
# 我们再来取一下HelloWorld仓库的文件
# 看看我们的文件是否真的更新成功了 (其实没必要,当前仅为熟悉命令)
# 这次我们还是放入一个新文件夹
mkdir down_git
cd down_git
git clone git@github.com:yanrk/HelloWorld.git
ls
cd HelloWorld
cat HelloWorld.cpp
./HelloWorld.out
# 测试完毕,一切正常
# 删除多余的备份 down_git
pwd
cd ../..
rm -r down_git # rm -r path 可以删除非空的文件夹
# 差点忘了,还有一个不错的github学习网页: http://www.worldhello.net/gotgithub/index.html