• Linux基础※※※※如何使用Git in Linux(二)


    参考资料:

    1. http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

    2. Git-简明教程

    3. Github常见操作和错误

    4. Pro Git

    5. Github上传error: src...解决方案

    Git与Github之间传输

    Git的定义:

    "Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency"

    Github的定义:

    "GitHub is a web-based Git repository hosting service, which offers all of the distributed revision control and source code management (SCM) functionality of Git as well as adding its own features."

    Git是一个版本控制系统,它是一个管理你源代码修改历史的工具,而Github则提供Git Repositories的远程托管服务。实际上,我们完全可以不需要Github,而直接用Git作为一个本地的版本控制系统。Github从某种意义上,有备份本地资源和利于合作的意思。

     

                        图1 Github支持的传输的协议      

    由上图可以看出,Github支持两种协议:SSH和GPG协议进行传输。

    sudo ssh-keygen -t rsa -C "youremail@example.com"

    可以按上边的命令,创建ssh的公钥和私钥,并将公钥复制到Github上。请使用下边的命令进行测试ssh是否能通信成功:

    sudo ssh -T git@github.com

    关联本地Git项目与Github项目

    在本地创建项目testProj将其关联到Github上创建的项目testProj。

    创建本地项目testProj:

    sudo mkdir testProj
    cd testProj
    sudo git init

    在Github上创建testProj项目

              图2 在Github上创建项目

    将本地项目与Giihub项目关联:

    sudo git remote add origin git@github.com:yourUserName/testProj.git

    或则,用下边的命令关联

    sudo git remote add origin https://github.com/yourUserName/testProj.git

    如果碰到出错信息:fatal:remote origin already exists,则先输入下边命令删除当前项目的origin,再输入上边的命令关联。

    sudo git remote rm origin

    如果仍然还有上边的错误,就得看gitconfig文件了,并将其中关于 remote origin的项删除再继续关联。

    创建readme.txt,并将其push到github上。

    sudo touch readme.txt
    sudo git add readme.txt
    sudo git commit -m 'Add readme.txt'
    
    sudo git push origin master

    注意:如果没有创建readme.txt文件,而直接调用最后一行的代码,会产生error: src refspec master does not match any(不能push空目录)。

    现在,我们就可以在本地修改,并将改动push到remote的Github上了。另外,注意将本地push到远程时,readme.txt是在本地创建的,远程创建只是一个空目录。

    远程克隆到本地

     在远程Github上创建testProj2,里面包含一个README文件,且添加内容如下:

                        图三 在Git上创建testProj2

    使用如下命令将远程Github项目testProj2克隆到本地:

    sudo git clone git@github.com:yourUserName/testProj2.git

     ☢ 创建并合并分支

    在创建分支前,我们需先切换到testProj2里。

    cd testProj2

    然后,创建分支dev:

    sudo git branch dev

    然后,切换到分支dev:

    sudo git checkout dev

    注意:上边两条命令等价于下边一条命令:

    sudo git checkout -b dev

    然后,我们可以查看本地所有分支,其中,当前分支前会有一个*号:

    sudo git branch

    查看远程分支:

    sudo  git branch -r

    然后,对README.md文件进行修改,并提交。

    然后,切换到master分支,此时,dev分支的改动并不在master分支上,所有我们看不见刚才的改动:

    sudo git checkout master

    然后,将dev合并到master上:

    sudo git merge dev

    合并完后,删除dev分支:

    sudo git branch -d dev
  • 相关阅读:
    每日一问6:short、int、long以及long long的区别
    每日一问5 什么是类型安全?
    每日一问4: ++i和i++的区别
    每日一问3: C++中extern关键字的作用
    C++中如何判断int型是否溢出
    C++中的POD型别
    Java多线程之一:进程与线程
    设计模式2-单例模式
    Maven学习-编译遇到‘src/checkstyle/checkstyle-suppressions.xml‘
    任意用户登录系统时,显示警示提醒信息 “hi dangerous!”
  • 原文地址:https://www.cnblogs.com/AmitX-moten/p/5540065.html
Copyright © 2020-2023  润新知