github代码托管

简介:
 

下载github客户端软件

  1)  官网下载help.github.com

  2)  百度搜索,一般用于windows7以前的系统 

安装github软件

  按照软件提示安装即可。不过,博主倾向使用命令行工具。

使用git命令提交

  1)安装Git后首先要做的事情是设置用户名称和e-mail地址。这是非常重要的,因为每次Git提交都会使用该信息。它被永远的嵌入到了你的提交中:

    git config --global user.name "Chars Davy"

    git config --global user.email chars_d@example.com

  重申一遍,只需要做一次这个设置。如果传递了 --global 选项,因为Git将总是会使用该信息来处理你在系统中所做的一切操作。如果你希望在一个特定的项目中使用不同的名称或e-mail地址,你可以在该项目中运行该命令而不要--global选项。

  2)git clone:这是一种较为简单的初始化方式,当你已经有一个远程的Git版本库,只需要在本地克隆一份

    git  clone  git://github.com/someone/some_project.git

  上面的命令就是将'git://github.com/someone/some_project.git'这个URL地址的远程版本库,完全克隆到本地some_project目录下

  3)git init 和 git remote:这种方式稍微复杂一些,当你本地创建了一个工作目录,你可以进入这个目录,使用'git init'命令进行初始化;Git以后就会对该目录下的文件进行版本控制,这时候如果你需要将它放到远程服务器上,可以在远程服务器上创建一个目录,并把可访问的URL记录下来,此时你就可以利用'git remote add'命令来增加一个远程服务器端,

    git  remote  add  origin  git://github.com/someone/another_project.git

  上面的命令就会增加URL地址为'git: //github.com/someone/another_project.git',名称为origin的远程服务器,以后提交代码的时候只需要使用 origin别名即可,使用这条命令时,一定要在git clone本地的文件目录下。

  4)git add 是将当前更改或者新增的文件加入到Git的索引中,加入到Git的索引中就表示记入了版本历史中,这也是提交之前所需要执行的一步,例如'git add app/model/user.rb'就会增加app/model/user.rb文件到Git的索引中,该功能类似于SVN的add,

    git add .

  上面的命令会将所有改动过的文件及文件夹迭代全部添加进本地代码仓库。

  5)git commit:提交当前工作空间的修改内容,类似于SVN的commit命令,例如'git commit -m story #3, add user model',提交的时候必须用-m来输入一条提交信息,该功能类似于SVN的commit, 

    git commit –m beta

  上面的命令会将beta作为log显示在代码提交记录中。

  6)git push 将本地commit的代码更新到远程版本库中,

    git push origin 

  上面的命令就会将本地的代码更新到名为orgin的远程版本库中。

注意:这里是使用github作为远端代码仓库,其实换成现在国内流行的Git@OSC也是一样的,仅仅只是代码仓库地址的区别而已。

git代码提交中可能会遇到的问题

1)You can't push to git://github.com/example/example_pro.git

  Use https://github.com/ example/example_pro.git

解决办法:

  git remote remove origin

  git remote add origin git@github.com:user_name/user_repo.git

  git push origin

原因:

  如果在git clone的时候用的是git://github.com:xx/xxx.git 的形式, 那么就会出现这个问题,因为这个protocol是不支持push的

  而使用

  git clone git@github.com:lujinjianst/myNCCL.git

  就可以用git push。

2)Permission denied(publickey).

  fatal:Could not read from remote repository.

原因:没有在github账号添加SSH key。

解决办法:

  在终端输入。

   ssh-keygen -t rsa -C "forwhat.cn"//注意。forwhat.cn为用户名

  如果执行成功。返回

  Generating public/private rsa key pair.

  Enter file in which to save the key (/home/forwhat.cn/.ssh/id_rsa):

  在这里就是设置存储地址了.反正我是直接按的回车

  然后还会返回

  Enter passphrase (empty for no passphrase):

  再次直接回车。

  Enter same passphrase again:

  再次回车。

  Your identification has been saved in /home/forwhat.cn/.ssh/id_rsa.

  Your public key has been saved in /home/forwhat.cn/.ssh/id_rsa.pub.

  The key fingerprint is:

  这样SSH key就生成了。直接cat一下。

  000000:~/a$ cat /home/forwhat.cn/.ssh/id_rsa.pub

  ssh-rsa AAAAB3NzaC1yc2EAAAADAQXXX

  把显示出来的直接添加到github账户设置里边的SSH keys 。

  回来再git pull就开始远程拷贝代码了。

目录
相关文章
|
6月前
github克隆代码加速
github克隆代码加速
117 2
|
7月前
|
机器学习/深度学习 算法 程序员
GitHub:代码世界的来世今生
GitHub:代码世界的来世今生
57 1
|
7月前
|
开发工具 数据安全/隐私保护 git
如何提交代码到github
如何提交代码到github
|
7月前
|
人工智能 运维 Linux
一文了解IntelliJ IDEA如何使用git上传代码到GitHub(附常见问题解决方案)
一文了解IntelliJ IDEA如何使用git上传代码到GitHub(附常见问题解决方案)
413 0
|
2月前
|
开发工具 git Python
代码管理记录(二):Github代码上传实操
本文是关于如何使用Git将本地代码上传到GitHub的实操指南。介绍了Git的基本概念、安装方法,并通过详细的步骤指导用户从GitHub创建仓库到使用Git命令初始化、添加、提交代码,最终将代码推送到远程仓库。同时,还汇总了一些常见的错误及其解决方法。
42 2
代码管理记录(二):Github代码上传实操
|
4月前
|
存储 安全 API
GitHub主要仓库泄露访问令牌,代码与云环境面临风险
GitHub主要仓库泄露访问令牌,代码与云环境面临风险
GitHub主要仓库泄露访问令牌,代码与云环境面临风险
|
4月前
|
安全 网络协议 Shell
Github代码仓库SSH配置流程
这篇文章是关于如何配置SSH以安全地连接到GitHub代码仓库的详细指南,包括使用一键脚本简化配置过程、生成SSH密钥对、添加密钥到SSH代理、将公钥添加到GitHub账户以及测试SSH连接的步骤。
83 0
Github代码仓库SSH配置流程
怎样在GitHub上建立仓库、以及怎样实现分支代码的合并。保姆级别的教程
这篇文章是一份详细的GitHub使用教程,介绍了如何在GitHub上创建仓库、创建分支、编辑和发布更改内容、发起拉取请求以及合并分支的操作步骤。
怎样在GitHub上建立仓库、以及怎样实现分支代码的合并。保姆级别的教程
|
4月前
|
安全 Shell 网络安全
告别繁琐密码,一键解锁GitHub高效秘籍!SSH配置大揭秘,让你的代码托管之旅飞起来!
【8月更文挑战第4天】在使用GitHub时,频繁输入账号密码颇为不便。采用SSH协议可提升安全性并简化流程。本文以问答形式指导你快速配置GitHub SSH:了解SSH优势、学会生成与添加SSH密钥及测试连接。通过简单的步骤,即可实现无缝代码推送与拉取,享受高效、安全的开发体验。记得保护好私钥并根据需要设置多个密钥对。
68 7
|
4月前
|
敏捷开发 测试技术 持续交付
阿里云云效产品使用合集之从GitHub下载代码失败是什么原因
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。