Git学习笔记(一)

宽为限 紧用功 工夫到 滞塞通

声明

此篇博文记录的完全是个人第一次看教程跟着操作,看现象总结出的很主观的想法!!!同样是小白的话小心被带坑里,也希望有大神可以指出我误解的那些结论。TKS

开篇闲聊

据说Git是目前世界上最先进的分布式版本控制系统。(没有之一)
对我来说就是小白进阶大神的必备技能,今天也是项目上遇到了,之前一直用的是朋友的云服务器在他那里部署了一个SVN服务,今天自己也买了个云主机就想把代码迁到自己的服务器上来。版本控制器 对于我这个小白来说第一个想到的肯定是SVN一直在用,然而我还是装了个Git服务。哈哈~ 就喜欢折腾 \(^o^)/YES!

开搞开搞

1、安装,这个非重点,略过。

#yum install -y git

2、然后为git 单独创建一个用户

先创建用户组

# groupadd git

然后创建用户 git 并将其加入到 git 用户组:

# useradd -G git git

为用户 git 设置密码:

# passwd git

其实直接 # useradd git 也可以,它会默认创建用户名相同的组。#su git 切换git用户试试,然后习惯性的 ls一下,发现没执行,说了这段话ls: cannot open directory .: Permission denied,不能打开目录,没权限。然后网上找问题答案咯,找到的是这样的

Ubuntu下普通用户用sudo执行命令时报”xxx is not in the sudoers file.This incident will be reported”错误,解决方法就是在/etc/sudoers文件里给该用户添加权限。如下:

1.切换到root用户下

2./etc/sudoers文件默认是只读的,对root来说也是,因此需先添加sudoers文件的写权限,命令是:
chmod u+w /etc/sudoers

3.编辑sudoers文件
vi /etc/sudoers
找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名)

ps:这里说下你可以sudoers添加下面四行中任意一条
youuser ALL=(ALL) ALL
%youuser ALL=(ALL) ALL
youuser ALL=(ALL) NOPASSWD: ALL
%youuser ALL=(ALL) NOPASSWD: ALL

第一行:允许用户youuser执行sudo命令(需要输入密码).
第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).
第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.
第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.

4.撤销sudoers文件写权限,命令:
chmod u-w /etc/sudoers

http://www.linuxidc.com/Linux/2016-07/133066.htm

改了发现还是有这个问题,,+_+ 后面才想到我是通过su 切换过来的,系统实际登录的还是上一个用户的,所以目录啥的都是上一个用户的怪不得没权限!

3、服务器端创建 Git 仓库

$ mkdir -p /home/git/gittest.git
$ git init --bare /home/git/gittest.git

额~,创建Git仓库就这么简单!

4、客户端 clone 远程仓库

① Git Bash

首先解释一下wamp这个目录,这个是一组常用来搭建动态网站或者服务器的开源软件,我安装的目录是D盘;
进入 Git Bash 命令行客户端,创建项目地址(设置在 d:/wamp/www/gittest_gitbash)并进入:

Administrator@SG-20170206ABCD MINGW64 ~
$ cd /d
Administrator@SG-20170206ABCD MINGW64 /d
$ cd wamp/www
Administrator@SG-20170206ABCD MINGW64 /d/wamp/www
$ mkdir gittest_gitbash
Administrator@SG-20170206ABCD MINGW64 /d/wamp/www
$ cd gittest_gitbash
Administrator@SG-20170206ABCD MINGW64 /d/wamp/www/gittest_gitbash
$ git clone git@192.168.20.101:/home/data/gittest.git

然后从Centos7 Git 服务器上 clone 项目:

$ git clone git@192.168.20.101:/home/data/gittest.git

执行过程如下图所示:
Git学习笔记(一)_第1张图片

当第一次连接到目标 Git 服务器时会得到一个提示:
输入 yes:

The authenticity of host ‘192.168.20.101 (192.168.20.101)‘ can‘t be established.
ECDSA key fingerprint is SHA256:HEaAUZgd3tQkEuwzyVdpGowlI6YKeQDfTBS6vVkY6Zc.
Are you sure you want to continue connecting (yes/no)?

输入git设置的密码:

Warning: Permanently added ‘192.168.20.101‘ (ECDSA) to the list of known hosts.
git@192.168.20.101‘s password:

此时 C:\Users\用户名.ssh 下会多出一个文件 known_hosts,以后在这台电脑上再次连接目标 Git 服务器时不会再提示上面的语句。

http://www.mamicode.com/info-detail-1833427.html

② eclipse Git插件

直接上图

1、添加远程仓库地址
Git学习笔记(一)_第2张图片

2、Next
Git学习笔记(一)_第3张图片

3、Next
Git学习笔记(一)_第4张图片
选择要下载的分支,新库是没有的直接Next!

4、Next
Git学习笔记(一)_第5张图片

5、Finsh
Git学习笔记(一)_第6张图片

最后本地与远程就这样关联上了,这是新建的干净的库

6、关联项目
Git学习笔记(一)_第7张图片

选择要上传的项目
Git学习笔记(一)_第8张图片

其实,在外面导入也是一样的
Git学习笔记(一)_第9张图片

7、关联本地Git仓库
Git学习笔记(一)_第10张图片

Git学习笔记(一)_第11张图片

Git学习笔记(一)_第12张图片

哎呀妈呀!累死了,,,看到下面这里熟悉又陌生吧! 哈哈~

Git学习笔记(一)_第13张图片

文件上传
这一步官方名称不知叫啥,暂且叫他准备上传吧!
Git学习笔记(一)_第14张图片

提交前文件处理
Git学习笔记(一)_第15张图片

本地提交
Git学习笔记(一)_第16张图片

其他操作
Git学习笔记(一)_第17张图片

OK,上传到此结束!

那就再来个检出吧!

先删除Git配置
Git学习笔记(一)_第18张图片

按照上面的添加步骤走完

当当当当,强势归来!
Git学习笔记(一)_第19张图片

后记

代码提交到Git服务器时,服务器上的每个文件夹都翻遍了,都没 找到提交的代码放哪了,,,哈哈,还是SVN时的那种思维,不过最后我发现一个比较大的文件,以后慢慢了解熟悉Git,今天算入门 \(^o^)/YES!

站在巨人的肩膀上

本篇博文参考的文章
http://blog.csdn.net/wave_1102/article/details/47779401
http://www.mamicode.com/info-detail-1833427.html
http://jingyan.baidu.com/article/2a1383284bb3e8074a134f2d.html
http://www.linuxidc.com/Linux/2016-07/133066.htm

你可能感兴趣的:(git)