git/github使用
以下是全部在命令行使用(windows/github)

注册账户以及创建仓库
先在github建立账号和创建仓库,此时为空的仓库

配置git
下载并安装 git windows版本(it-2.7.2-32-bit_setup.1457942412.exe)
首先在本地创建ssh key
运行 git bash here:
ssh-keygen -t rsa -C "your_email@youremail.com"

后面的your_email @youre mail.com改为你在github上注册的邮箱,之后会要求
确认路径和输入密码,我们这使用 默认的一路回车就行。成功的话会在~/下
生成.ssh文件夹,进去,打开id _rsa.pub,复制里 面的key。
回到 github上,进入 settings

把上面生成的id_rsa.pub的内容复制放到 4 指示那里,3中的随便指定一个名称

为了验证是否成功,在git bash下输入:
ssh -T git@github.com
如果是第一次的会提示是否continue,输入yes就会看到:
You've successfully authenticated, but GitHub does not provide shell access 。
这就表示已成功连上github。

接下来我们要做的就是把本地仓库传到github上去,在此之前还需要设置
username和email,因为github每次commit都会记录他们

git config --global user.name "your name"
git config --global user.email "your_email@youremail.com"

进入要上传的仓库
git remote add origin git@github.com:yourName/yourRepo.git
后面的yourName和yourRepo表示你再github的用户名和刚才新建的仓库

检出仓库
执行如下命令以创建一个本地仓库的克隆版本:
git clone /path/to/repository

如果是远端服务器上的仓库,你的命令会是这个样子:
git clone username@host:/path/to/repository
接下来,就可以在本地修改,再提交
基本操作如下
git add filename
git commit -m "注释"
git push origin master
以上即可修改完成
=======================
以下是多人合作开发项目
常用方法是,一个master,别的开发成员,fork一个项目出来, 然后在 fork
出来的项目再克隆到本地,与上面的操作一样的,此时开发的只是与fork
相关的,然后再 pull到 master,当在 master中看到有冲突时,看提示操作
即可解决冲突问题

=============
fork之后保持原代码同步
1.进入本地项目目录,输入 git remote -v:

红框内的url是我Github上的项目,蓝框内的url是原作者项目。如果没有
upstream,即没有原作者项目的url,你需要自己添加:
$ git remote add upstream <原作者项目的URL>

2.将原作者项目更新的内容同步到我的本地项目(不是我Github网上的项目)
git pull upstream

3.检出到主分主
git checkout master

4.接下来就是合并这两个分支,将原作者项目的修改同步到自己这里
(注意还是指本地项目,不是自己Github空间里的项目)
git merge upstream/master
如果有冲突,会有这里提示,修改好冲突的文件即可,然后再提交

至此我的本地项目已经于原作者项目同步了
接着再同步到 fork上面,即保持同步了

=============================
TortoiseGit为github账号添加SSH keys,即用 TortoiseGit操作时
使用TortoiseGit作为github本地管理工具,
TortoiseGit使用扩展名为ppk的秘钥,而不是ssh-keygen生成的rsa密钥。也就是说使用ssh-keygen -C "username@email.com" -t rsa产生的密钥
TortoiseGit中不能用。而基于github的开发必须要用到rsa密钥,
因此需要用到TortoiseGit的putty key generator工具来生成既适用于
github的rsa密钥也适用于TortoiseGit的ppk密钥。

打开TortoiseGit下的PuttyGen,在打开的窗口中点击Generate按钮,
会出现绿色进度条,等下生成,生成过程中可以多晃晃鼠标增加随机性。

生成之后复制生成的全部内容,窗口先留着不关闭。

登录到github,回到 github上,进入 settings,将刚刚复制的内容粘贴到公钥那里即可

返回到第二步的窗口,点击Save private key按钮保存为适用于TortoiseGit的私钥扩展名为.ppk。

运行TortoiseGit开始菜单中的Pageant程序,程序启动后将自动停靠在任务栏中,双击该图标,弹出key管理列表。

在弹出的key管理列表中点击add key,将第4步中保存的私钥(.ppk)文件加进来,关闭对话框即可。

经上述配置后,就可以使用TortoiseGit进行push、pull操作了
如果当推送时出现类似这样的提示:
error: cannot spawn C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe: No su
ch file or directory
设置下 TortoiseGitPlink.exe 路径即可

最新文章

  1. lhgDialog窗口组件
  2. PHP - xhprof+Graphviz 安装配置
  3. nginx重启
  4. 利用GCTA工具计算复杂性状/特征(Complex Trait)的遗传相关性(genetic correlation)
  5. Python 培训之MySql
  6. SRF之页面
  7. iOS访问通讯录开发-读取联系人信息
  8. 机器安装第二个tomcat ,出现报错如何解决
  9. HDOJ 2021 发工资咯:)(利用了一种取余的思想)
  10. OpenGL ES 2.0 摄像机与投影
  11. HDU 5729 - Rigid Frameworks
  12. Java连接Azure SQL Database
  13. 一个ajax的Post要求
  14. linux挂载本地windows分区或目录
  15. MySQL实现按天统计数据的方法
  16. Web Service CXF的工作流程
  17. 在vue中使用highcharts的仪表图等扩展
  18. C语言中的地址传递(传指针,传递给形参的指针仍然是实参指针的一份拷贝)
  19. mexHttpBinding协议 【发布元数据终结点】
  20. JAVA内部线程2

热门文章

  1. Android(java)学习笔记109:通过反射获取成员变量和成员方法并且使用
  2. 错误与修复:ASP.NET无法检测IE10,导致_doPostBack未定义JavaScript错误,恒处于FF5卷动条位置
  3. some words we should know
  4. centos7重置root开机登录密码
  5. 关于关闭Eclipse的控制台自动跳出
  6. mysql 5.7 root password 过期
  7. iOS用AVAudioPlayer播放m4a音频
  8. maven的一些常用配置
  9. SQLite的查询
  10. Unity Rigidbody 刚体中的Angular Drag和Freeze Position/Rotation