[Git] git的理解与使用

1.git安装:

ubuntu: sudo apt-get install git

centos: 

  1. 获取github最新的Git安装包下载链接,进入Linux服务器,执行下载  wget https://github.com/git/git/archive/(vx.xx.x).tar.gz(括号中为自己选择的版本)
  2. 安装编译源码所需依赖,命令为 yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
  3. 进入解压后的文件夹,命令 cd git-(x.xx.x),然后执行编译,命令为 make prefix=/usr/local/git all
  4. 安装git,命令为 make prefix=/usr/local/git install
  5. 打开环境变量配置文件,命令 vim /etc/profile ,在底部加上Git相关配置信息:                               PATH=$PATH:/usr/local/git/bin                                                                                                                                                    export PATH
  6. 退出后 git --version 进行版本查看

2.git理解:

git分四层管理代码:

  1. 你目录中的文件是第一层
  2. 缓存区,每次add之后,当前目录中要追踪的文件会作为一个版本会存放在缓存区。注意不是所有的文件。一般一个文件生成之后,会标记为“未追踪”,但是否对其做版本管理还是要选择的。例如一些编译文件就没有必要追踪。对需要做版本管理的问件,用add添加,不需要的用clean删除。
  3. 本地仓库,每次commit之后,缓存区最新的版本就会存放在本地仓库。这里要提及一个HEAD的概念。HEAD是当前的版本指向,每次更新或者回退都会修改HEAD的指向,但对仓库中每一个版本并不会删除。所以即使回退到过去还是有机会回到现在的版本的。
  4. 远程仓库,每次push之后,会将本地仓库中HEAD所指向的版本存放到远程仓库
命令功能
git init在本地的当前目录里初始化git仓库
git status查看当前仓库的状态
git add -A增加目录中所有的文件到缓存区
git add file增加相应文件到缓存区
git commit -m "信息"将缓存区中更改提交到本地仓库
git log查看当前版本之前的提交记录
git reflog查看HEAD的变更记录,包括回退
git branch -b branch_name建立一个新的分支
git diff查看当前文件与缓存区文件的差异
git checkout -- file取消更改,将缓存区的文件提取覆盖当前文件
git reset --hard 版本号回退到相应版本号,同样也可以回退到未来的版本号
git clean -xf删除当前目录中所有未追踪的文件
git config --global core.quotepath false处理中文文件名

3.git和github的连接:

首先你需要一个github的账户,然后我们要建立SSH链接。将公钥存储在github中,这样本地就可以通过SSH与github展开加密通讯。

建立连接方法: ssh-keygen -t rsa -C "your_email@youremail.com" //双引号里面是你的常用邮箱

输入之后要输入口令,可以不用输入直接按“enter”一路确认就可以了。然后在账户的根目录(/或者/home/你的账户名,具体取决于你执行上述命令时所采用的账户)查找隐藏目录.ssh/id_rsa.pub文件,将当中内容添加到github的SSH中。

使用命令 ssh -T git@github.com 如果出现You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github

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

这样你就可以通过SSH链接到github中了

4.利用git从本地上传到github:

github作为一个远程仓库,你可以链接这个仓库,并保持同步。但是你不能把本地仓库直接上传到github中去。所以你应该先在github中建立一个对应的仓库,然后再在本地建立一个仓库,将两者进行链接,再去写入文件执行版本管理。

  1. 进入要所要上传文件的目录输入 git init 进行初始化
  2. git remote add origin git@github.com:<用户名>/<仓库名>.git
  3. git add xxx 添加选择文件到github,也可以使用 git add . 自动添加
  4. git commit -m ”xxx“ //说明这次提交的内容
  5. git push origin master  //提交到远程github上

如果出现报错 Git: ! [rejected] master -> master (non-fast-forward):

错误产生的原因是,因为我在A电脑上向github上的项目push过代码,而又在B电脑上修改了代码并且要push到github上去,这个时候,git为了避免冲突的发生,rejected

将github上的新代码拉下来,然后在本地merge

git fetch origin

git merge origin/master

最后进行修改提交

git push origin master

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值