Git客户端的简单使用(注册->应用)

参考文档:

Ubuntu下git安装与使用:https://jingyan.baidu.com/article/dca1fa6f43c965f1a540524d.html

Ubuntu下使用SSH KEY:https://jingyan.baidu.com/article/5bbb5a1bff545613eba17915.html


1.    通过apt源安装git命令行工具

这里不建议通过源码进行安装,增加复杂程度,且最新版本的Git在各个方面都会修复,不至于出现不能用的状态

sudo apt-get update

sudo apt-get install git

 

2.    登陆公司git服务器,进行账户注册

服务器地址:192.168.6.150

注册信息如下图填写即可

 

3.    生成秘钥对

在使用git时,需要用到ssh key来作验证,原理自行查阅,下面说生成ssh key方法

安装好git后,在任意目录下执行都可以生成ssh key

ssh-keygen -t rsa -C “[email protected]

 

使用上述命令生成钥匙对,其中-t表示钥匙对采用的加密类型为后面设置的rsa,-C是注释,说明这个KEY的用途等,这里使用邮箱主要是方便管理,说明这个KEY是谁的

 

运行该命令后有如下内容输出:

Generating public/private rsa key pair.

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

 

这里按“回车”键确认生成的钥匙对保存在默认地址,接下来会提示如下:

Enter passphrase (empty for no passphrase):

这里要求输入密码,如果回车表示密码为空,请按实际处理,输入密码后会提示再次输入确认:

Enter same passphrase again:

:在git上传代码的时候会提示输入密码,防止有人闲着无聊修改你的代码

输入并“回车”后会生成KEY,截图如下:

 


4.    添加公钥到你的远程仓库(github)

cat ~/.ssh/id_rsa.pub

大概是这么一串字符

ssh-rsaAAAAB3NzaC1yc2EAAAADAQABAAABAQC6+SXETCQ97BcX0+yUqqgtpLZZNeCyU20gkgiv1YkPfkfBc4Xx8sfERTNkX9FcxHhrvksUgK/BX6j5ofjN4dXEOCOfVx6JSLOOI627GU4RZBvwa3bsLBdEeinAvHOwgK4YWpaPx9lInWDq4k6A/Jg6IF19v0tMg8gPWqz674SltiqpxKhNOJ8KhHwAtjEzosOZ95oM+9f/Ymx6VEOMkPG74O/1bKPePY5VN/i6y68MoxnYagGT40LzKJ5Ro/8Qid8FJp6CVrLtHRTusQdLtrSjhUQ8Umnbo6fEiDfTfsTYGD5dfBb//V2UWPBfp3efSLnufNgVd9wgo7ijhFT2LqaH[email protected]


登陆你的github帐户。点击你的头像,然后 Settings -> 左栏点击 SSH andGPG keys -> 点击 New SSH key

然后你复制上面的公钥内容,粘贴进“Key”文本域内。点击 Add key

 

5.    检测key是否正常

ssh -T [email protected]

如果,看到:

Hi xxx! You've successfully authenticated,but GitHub does not # provide shell access.

恭喜你,你的设置已经成功了

 

6.    添加工程在你的远程仓库(github)


7.    在linux下上传初始代码

运行命令来配置用户名和邮箱

git config --global user.name "qushouyi"

git config --global user.email "[email protected]"

 

git init

git remote add origin [email protected]:qushouyi/slave_venc.git

git add .

git commit -m “Initial commit”

git push -u origin master

 

8.    登陆你的github帐户,查看代码,6中的截图只有在新创建工程的时候出现一次,代码上传成功后自动消失

在使用git的时候千万小心,不然会出很多错误,需要查阅资料解决,下面分享一些我遇到的问题。


问题1:上传代码的时候怎么添加版本注释?


问题2:git remote addorigin [email protected]:qushouyi/slave_venc.git

源输入错误怎么办?

 

问题3:更换本地代码保存路径,按照上述方式无法上传怎么办?

       这个是由于新建git服务器无法识别新的路径和原有路径之间的区别,我是通过重新生成ssh key,再次操作上传成功的。

 

问题4:更新被拒绝

提示:更新被拒绝,因为您当前分支的最新提交落后于其对应的远程分支。

提示:再次推送前,先与远程变更合并(如 'gitpull ...')。详见

提示:'git push --help' 中的 'Noteabout fast-forwards' 小节。

 

引起这个问题是远程仓库和本地不同步引起的

解决方案:需要先获取远端更新并与本地合并,gitpush
具体操作如下:

 

 

9.Git概念理解:

工作区:就是你在电脑上看到的目录,比如目录下test里的文件(.git隐藏目录版本库除外)。

              或者以后需要再新建的目录文件等等都属于工作区范畴。

版本库(Repository):工作区有一个隐藏目录.git,这个不属于工作区,这是版本库。其中版本库里面存了很多东西,其中最重要的是stage(暂存区),还有git为我们自动创建了第一个分支master,以及智商master的一个指针HEAD。

 

使用git提交文件到版本库有两步:

第一步:使用git add 文件把文件添加进去,实际上就是把文件添加到暂存区。

第二步:使用git commit提交更改,实际上是吧暂存区的所有内容提交到当前分支上。

 

10.Git常用指令整理:

(1)     git init

把当前的目录变成可以管理的git仓库,生成隐藏的.git文件

(2)    git config–global user.name “qushouyi”

        git config –global user.email “[email protected]

表示这台机器上所有的git仓库都会使用这个配置,也可以对某个仓库指定不同的用户和邮箱

(3)    git add XX

把XX文件添加到暂存区去

(4)    git commit -m“XX”

将文件提交到仓库,-m后面的是注释

(5)    git status

查看仓库状态

(6)    git diff XX

查看XX文件修改了哪些内容

(7)    git log

查看历史记录

(8)    git log --pretty=oneline

如果不喜欢git log过多的显示信息,可以用这条指令简化

(9)    git reset–hard HEAD^

回退到上个版本(HEAD^),上上个版本(HEAD^^),以此类推

(10)  git reset --hard HEAD~100

回退到前100个版本,简化上述操作

(11)  git reset –hard 版本号

回退到指定代码的版本

(12)  git reflog

查看历史记录的版本号id

(13)  git checkout --XX

把XX文件在工作区做的修改全部撤销,同时也可以恢复在工作区中删除的文件

test.txt修改后还没有放到暂存区,使用撤销修改就回到和版本库一模一样的状态。

test.txt修改后已经有放到暂存区,接着又做了修改,撤销修改只能回到添加暂存区后的状态,已经添加到暂存区的内容不能撤回。

(14)  git remote add origin https://github.com/qushouyi/testgit.git

        git remote add origin [email protected]:qushouyi/testgit.git

根据在GitHub上新建仓库的提示,把一个已有的本地仓库与远程仓库关联

(15)  git push -u origin master / git push origin master

把本地库的内容推送到远程库,实际上是把当前分支master推送到远程

第一次推送master分支时,由于远程库是空的,所以加上-u参数,git不但会把本地的master分支内容推送到远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。

(16)  git clone https://github.com/qushouyi/testgit.git

        git clone [email protected]:qushouyi/testgit.git

将GitHub远程库克隆到本地

(17)  git checkout -b dev

加上-b参数表示创建并切换,创建dev分支,并切换到dev分支,相当于如下两条

git branch dev       //创建分支dev

git checkout dev    //切换分支dev

(18)  git branch

查看分支,会列出所有的分支,当前分支前面会添加一个星号

(19)  git merge dev

合并指定分支到当前分支上

(20)  git branch -d dev

删除dev分支

(21)  git remote -v

查看远程库的详细信息

(22)  git pull

把最新的提交从origin中抓下来,在本地合并

(23)  git rm XX

删除XX文件

(24)  git stash

把当前的工作隐藏起来,等以后恢复现场后继续工作

(25)  git stash list

查看所有被隐藏的文件列表

(26)  git stash apply

恢复被隐藏的文件,但是内容不删除

(27)  git stash drop

删除文件

(28)  git stash pop

恢复文件的同时,也删除文件


11.文中内容是本人工作中的记录和总结,截图中的地址和命名也是具体的git使用过程中的记录,参考的时候请注意换。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章