Git学习日记2

    xiaoxiao2026-05-02  13

    一. 安装Git

    在Ubuntu Desktop 14.04 LTS下安装命令,如下所示:

    sudo apt-get install git

    说明:查看Git版本命令:git --version

    二. 创建本地仓库

    版本库就是Git仓库,本质就是一个目录,目录里面的文件都可以被Git管理起来。如下所示:

    root@ubuntu:~# mkdir GitProgram

    root@ubuntu:~# cd GitProgram/

    root@ubuntu:~/GitProgram# pwd

    /root/GitProgram

    通过git init命令把这个GitProgram目录变成Git仓库,如下所示:

    root@ubuntu:~/GitProgram# git init

    Initialized empty Git repository in /root/GitProgram/.git/

    这样我们就建立好了一个空的Git仓库GitProgram,GitProgram目录下面又多了一个.git目录,这个目录是Git来跟踪管理版本库的。 然后操作,如下所示:

    git add test.txt (工作区)

    git comment -m "create a new file" (缓存区)

    三. 创建SSH Key

    创建SSH Key的命令,如下所示:

    ssh-keygen -t rsa -C ""

    在用户主目录下的.ssh目录中有id_rsa和id_rsa.pub两个文件,前者是私钥,后者是公钥。

     

    四. 设置用户信息

    首先需要注册一个GitHub账号,然后将id_rsa.pub中的内容粘贴到GitHub的SSH Keys中,这样就建立了本地仓库与远程仓库之间的关联。如下所示:

    ssh -T git@github.com

    测试完毕之后,如下所示:

    git config --global user.name "Your Name"

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

    其中,--global参数表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个Git仓库指定不同的用户名和Email地址。

    五. 创建远程仓库

    同样,我们在GitHub上面也建立一个GitProgram,然后将本地仓库的内容推送到远程仓库,如下所示:

    git remote add origin git@github.com:1000sprites/GitProgram.git

    git push -u origin master(根据需要输入相应的用户名和密码)

    其中,origin是远程仓库的默认名字,而master是本地仓库的当前分支的名字。

    特别说明:

    如果报错fatal: remote origin already exists,那么输入命令git remote rm origin即可。

    如果报错error: failed to push some refs to 'git@github.com:1000sprites/GitProgram.git',那么先git pull origin master,然后再git push -u origin master。

    当然,Git还有很多的命令操作,比如分支管理,标签管理等,需要在以后的工作中不断的实践和总结。

    六. Git命令

    1. 重命名仓库中的文件

    git clone git@github.com:username/reponame.git

    cd reponame

    git mv README README.md

    git commit -m "renamed"

    git push origin master

    2. 创建和使用分支 

    (1)git branch:列出本地已经存在的分支,并且在当前分支的前面加“*”号标记。

    (2)git branch -r:列出远程分支。

    (3)git branch -a:列出本地分支和远程分支。

    (4)git branch branchname:创建一个新的本地分支,但是只创建分支,不切换分支。    

    (5)git checkout branchname:切换branchname分支。

    (6)git branch -d branchname:删除本地branchname分支。

    (7)git branch -D branchname:强制删除本地branchname分支。

    (8)git branch -d -r branchname:删除远程branchname分支。

    (9)git branch -m | -M oldbranch newbranch:重命名分支,如果newbranch名字分支已经存在,则需要使用-M强制重命名,否则使用-m进行重命名。

    (10)git remote:列出所有远程主机。

    3. 分支合并

    解析:如果要将开发中的分支(develop)合并到稳定分支(master),首先切换的master分支:git checkout master。然后执行合并操作:git merge develop。如果有冲突,会提示你,调用git status查看冲突文件。解决冲突,然后调用git add或git rm将解决后的文件暂存。所有冲突解决后,git commit提交更改。

    4. git rm与rm区别

    解析:用git rm删除文件,同时还会将这个删除操作记录下来;而用rm删除文件,仅仅是删除了物理文件,并没有将其从git的记录中剔除。

    5. 撤销合并

    (1)合并后的代码未提交:git reset --hard HEAD

    (2)合并后的代码已提交:git reset --hard ORIG_HEAD

    七. .gitignore文件

    解析:

    .gitignore 配置文件用于配置不需要加入版本管理的文件。详细配置,如下所示:

    1. 以斜杠“/”开头表示目录;

    2. 以星号“*”通配多个字符;

    3. 以问号“?”通配单个字符;

    4. 以方括号“[]”包含单个字符的匹配列表;

    5. 以叹号“!”表示不忽略(跟踪)匹配到的文件或目录。

    八. 将项目原地址添加为远程仓库 [7]

    解析:

    复制原作者的项目地址,添加为自己的一个远程仓库,用来实时将原项目的修改更新到本地并合并。如下所示:

    git clone https://github.com/1000sprites/caffe.git

    git remote add upstream git@github.com/Microsoft/caffe.git

    说明:执行命令git remote -v,我们可以看到有两个仓库,一个是自己的github仓库(origin),另一个是原作者的远程仓库(upstream)。upstream可以自己命名。

    参考文献:

    [1] Git版本控制系统:http://www.cnblogs.com/fnng/archive/2011/08/25/2153807.html

    [2] Git初学解决错误:http://blog.csdn.net/qyf_5445/article/details/8737913

    [3] Git教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000

    [4] 在Windows上搭建Git:http://blog.csdn.net/ssw_1990/article/details/37833089

    [5] Git Documentation:http://git-scm.com/doc

    [6] Git详解:http://www.open-open.com/lib/view/open1328069609436.html

    [7] 参与github上开源项目的大致流程和注意事项:http://www.cnblogs.com/metoy/p/4097001.html

    转载请注明原文地址: https://ju.6miu.com/read-1309288.html
    最新回复(0)