美文网首页百人计划
小练习学习git库创建、文件添加与提交、连接远程库

小练习学习git库创建、文件添加与提交、连接远程库

作者: 薏苡莴苣 | 来源:发表于2017-06-17 00:39 被阅读0次

    第一次接触git,新建git库,添加文件,提交文件,clone远程文件,提交更新代码文件到远程库,一切感觉都很新鲜,现在只是了解了一些皮毛,感觉还有很多东西不是很理解。一开始都是乱弄,弄了几次然后才开始理一下,但是整理过程又发现很多不懂,果然学无止境。

    关于git小练习

    一、在GitHub上创建账户,然后新建一个git库,新建abc文件夹和config.xml文件。最后在本地克隆下来。打包文件移到www目录,解压。www目录建git库,实现连接远程库,并上传更新代码到远程库。

    1、GitHub.com网站上新建库,只遇到一个问题。就是不懂如何建文件夹。

    注册后选择新建库,进入如下图新建文件,然后获取clone路径。

    编辑代码库

    GitHub上新建库,注意要新建文件夹直接在文件夹后面加“/”即可。如下图。

    github新建文件夹

    2、Linux克隆远程git库代码,打包压缩。

    git clone https://github.com/yiyiwoju/test3.git                          //从GitHub clone代码下来。

    tar -czvf istester.tar.gz a  b c config.xml  //打包几个文件为istester

    tar -czvf  istester.tar.gz  -C  /usr/local/app/www                        //解压到www

    3、www目录建立版本库,添加文件,提交文件

    git init                            //在www目录下执行此命令,初始化www目录为git可以管理的仓库

    git  add  .                       //把当前目录下文件信息添加到索引库

    git commit -m”add a b cdirectory”      //确认提交暂存区内容到本地库,并备注修改内容。加-a?

    git log                            //查看历史记录,包括版本号,修改者,修改日期,你-m标注的修改内容。

    4、配置用户名和邮箱,实现本地和远程库的关联,更新代码到远程库

    git config --global  user.name "yiyiwoju"    //配置用户名

    git config --global  user.email "3792*453@qq.com"                  //配置邮箱

    ssh -keygen -t rsa -C"3792*453@qq.com"  //生成公钥在~/.ssh/目录

    cat ~/.ssh/id_rsa.pub                       

    复制密钥到github,见下图:

    GitHub配置密钥

    ssh -T git@github.com                //测试是否连上,已连上有提示successful

    git remote -v                      //获取远程更新

    git pull origin master                  //取得远程主机更新,再与本地分支master合并

    git push origin master                // 推送本地master分支的更新到远程origin主机的origin。

    此处会有几个报错见后面。

    5、更新文件代码,推送到远程库.以及一些常用的查看信息命令

    vi  usr/local/app/www/a/ahhh.txt

    git status

    git add  a

    git commit -m"second"

    git push origin master       


    git status                          //查看状态ahhh.txt已经修改但是没有上传确认

    git diff                            //查看更改了什么

    git log                            //查看更改历史记录

    git log --pretty=oneline                //单行显示输出信息

    git reflog                          //记录了每一次命令前面的数字是commit id。

    git reset --hard commit id              //输入对应版本号即可退回对应版本

    git reset --hart HEAR^                //退回上一个版本的命令

    git reset --hart HEAR^100              //退回前100个版本


    报错1、获取或推送更新报错,拒绝合并无关项目,也无法更新代码到远程

    pull、push报错

    百度解决方法:

    git pull origin master --allow-unrelated-histories    //允许合并不关联的项目

    2、执行上面之后还是报错Automatic merge failed即合并失败,需要解决冲突,然后重新提交

    自动合并失败

    网上搜索解决方法,如上图git status查看,原来是config.xml远程分支合并出错,保留一个

    (1)保留远程文件,丢弃本地文件:git reset --hard origin/master 

    (2)不丢弃本地文件,只能修改删掉冲突部分,然后重新提交:

    $:git add  config.xml

    $:git commit -m"message"

    显示ok了。


    二、本地新建git库。然后添加文件夹和文件到库里面,提交文件,最后打包移到APP/www目录解压。

    mkdir  -p  ./test/{a,b,c}      //新建一个test文件夹,test文件夹下面新建a,b,c上文件

    cd  test

    git  innit                         

    git  add  .

    git  commit  -m”add a b cdirectory”

    git    log

    cd  /usr/local/APP/bak 

    git clone --bare  /home/test            //克隆/home/test的裸版本库,只包含版本库内容

    tar -czvf  istester.tar.gz    a b c config.xml 

    mv  istester.tar.gz    ../www

    cd  ../www

    tar -xzvf  istester.tar.gz


    三、总结

    经过做练习过程了解了下git的一些基本命令,还有发现问题是寻找解决方案时,查看各路前辈们对于问题的分析,好像对于分析问题有了一定的提升,有时候自己也尝试从log分析查找问题,这是个不错的开端,O(∩_∩)O哈哈~

    对于git fetch和git pull区别,粗略看了下,感觉还得有空慢慢消化。

    还有尝试了下创建中心库也很好玩,可以把之前的库删了, 直接从中心库克隆出来。

    感觉git的基础知识还是有点欠缺。在github上新建文件夹时,一开始弄成了新建分支,然后克隆库之后发现没有abc文件,后来再去查才知道了怎么建文件夹。对应一个库可以存在多个代码,分支,项目,这些名词和它们之间关系还是不够了解。还有对于本地库,远程库,中心库,各种库的上传克隆,还有好多小细节很多东西不是很明白。

    还有虽然做了好几次练习,但是有一些命令还是不够熟悉,总之越学越觉得很多不懂。但是这个至少说明你在学习的路上,而不是静止不动,感觉很好。

    相关文章

      网友评论

        本文标题:小练习学习git库创建、文件添加与提交、连接远程库

        本文链接:https://www.haomeiwen.com/subject/osnmqxtx.html