• 为什么写博客,是因为遇到的坑,不希望别人在踩一遍!
  • 选择了,剩下的就是坚持和努力-------致自己!
  • 当能力达不到梦想时,更需要学习,努力,拼搏

Git 安装、简单使用

Linux运维 雪豹 7年前 (2018-02-11) 767次浏览 0个评论

images

第1章 Git

git 英译:饭桶,无用的人

Git 发展由来

Git 版本控制

版本控制是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况的系统。

版本控制发展

1、本地式(自己电脑)

images

2、集中式(需要联网)

images

3、分布式(git)

images

版本控制好处

images

■速度快 (自己有本地仓库,SVN受网络等影响)

设置简单

非线性开发模式

完全分布式(避免单点故障)

第1章 第一章

1.1 Git介绍

Git 是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何项目及文件。

1.2 环境安装:

1.2.1 下载

官方下载 https://git-scm.com/

images

第二步选择   click here to download manually

注意这个下载有点慢网速好的建议点击click here to download manually下载,经过测试可以右击 click here to download manually 选择迅雷或其他下载工具下载(推荐快)

images

images

1.1.1 安装客户端工具

images

在“Configuring the line ending conversions”选项中,
第一个选项:如果是跨平台项目,在windows系统安装,选择;
第二个选项:如果是跨平台项目,在Unix系统安装,选择;
第三个选项:非跨平台项目,选择

images

安装客户端工具

1.1.1 启动git

images

打开后进入 git 软件界面(可对文件和项目管理)

images

推荐 git 中文网站https://git-scm.com/book/zh/v2

第1章 git报错

xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-git (master)
$ git add -A
warning: LF will be replaced by CRLF in file.txt.
The file will have its original line endings in your working directory.

解决方法:
$ git config core.autocrlf false
报错二git pull 失败 ,提示:fatal: refusing to merge unrelated histories
关于这个问题,可以参考http://stackoverflow.com/questions/37937984/git-refusing-to-merge-unrelated-histories。
在进行Git pull 时,添加一个可选项
git pull origin master --allow-unrelated-histories

4.1 Git 工作流程

workspace 工作区 工作区:
index 指数暂存区:可以通过回退工作区
repository 知识库  本库(本地):速度快
remote :GitHub 远程版本库

images

1.1 Git 文件变化状态周期

untracked  工作区 :未跟踪需要 add (新增一个文件,不会被git管理,需要add 文件到暂存区,才能被发现)

unmodified   未改性的  (未被修改的)

modified改进的 修改   (修改了,)

staged 上演 暂存区 ()

新加文件一次,文件修改是叠加的。

1.2 git 文件状态操作

images

1.1.1 打开git bash (windos系统下操作,有linux基础命令最好)

4.3.1.1 进入 d盘 红色为命令操作
xuebao@DESKTOP-8QV2RMH MINGW64 ~
$ cd d:
4.3.1.2 ls查看目录结构
xuebao@DESKTOP-8QV2RMH MINGW64 /d
$ ls 
$RECYCLE.BIN                    Program\ Files\ (x86)
360WiFi                         project-2
360安全浏览器下载               project-git
4.3.1.3 创建一个project-get 文件夹
$ mkdir project-get

xuebao@DESKTOP-8QV2RMH MINGW64 /d
$ ls
4.3.1.4  cd project-get/ 进入目录
xuebao@DESKTOP-8QV2RMH MINGW64 /d
$ cd project-get/
  ls –a 查看 文件和隐藏文件 
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get
$ ls -a
./  ../
4.3.1.5 git 第一个命令 git init 创建本地版本库
在自己需要项目路径下 git init 
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get
$ git init
Initialized empty Git repository in D:/project-get/.git/
4.3.1.6 ls –a 查看隐藏文件 
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get (master)
$ ls -a
./  ../  .git/
里面有.git/ 说明这个项目或者文件被git管理,一定要ls –a查看.git/是影藏文件
vim 创建一个文件 按i 编辑
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get (master)
$ vim test.txt
里面写着 
add a file
按esc 退出 输入:wq  (记得将输入法调成英文模式。)

images

4.3.1.7 cat 查看内容
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get (master)
$ cat test.txt
add a file
4.3.1.8 第二个命令 查看git 状态
git 默认分支 master (git可以创建多个分支)
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get (master)
$ git status
On branch master  #在我们master分支上
Initial commit

Untracked files: #未被git跟踪的状态需要使用 git add
  (use "git add ..." to include in what will be committed)

        test.txt

nothing added to commit but untracked files present (use "git add" to track)

xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get (master)
4.3.1.9 git  add 加添加文件名字
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-get (master)
$ git add test.txt
再次查看状态 git status 待提交状态
$ git status
On branch master
Initial commit
Changes to be committed:
  (use "git rm --cached ..." to unstage)

        new file:   test.txt
git commit –m “” 提交 “”-m 可以
$ git commit -m "add test.txt"
[master (root-commit) 9aa6434] add test.txt
 1 file changed, 1 insertion(+)
 create mode 100644 test.txt

4.4 进入项目目录创建一个版本库

xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-git
$ git init
Initialized empty Git repository in D:/project-git/.git/
查看项目被Git 所管理 .git/
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-git (master)
$ ls -a
./  ../  .git/  file.txt
4.5 创建一个file文件
$ cat file.txt
add a file
4.6 查看git状态
# master git 分支
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-git (master)
$ git status
On branch master
Initial commit
Untracked files:
  (use "git add ..." to include in what will be committed)
        file.txt
nothing added to commit but untracked files present (use "git add" to track)
提交
$ git add file.txt
xuebao@DESKTOP-8QV2RMH MINGW64 /d/project-git (master)
$ git status
On branch master
Initial commit
Changes to be committed:
  (use "git rm --cached ..." to unstage)
        new file:   file.txt

4.7 备注方便以后查看

$ git commit -m "add a file"
[master (root-commit) dcb1e37] add a file
 1 file changed, 1 insertion(+)
 create mode 100644 file.txt
再次修改
$ git status
On branch master
Changes not staged for commit:
#git add 提交
  (use "git add ..." to update what will be committed)
# git checkout 返回到版本库
(use "git checkout -- ..." to discard changes in working directory)
        modified:   file.txt
no changes added to commit (use "git add" and/or "git commit -a")

4.8 工作区-暂存区-本地版本库

 

imagesimages

第1章 Git 常用命令

5.1 文件推送
先进入目录,把项目管理用 
命令:git init
5.2 git目录
bin/ 
cmd/
dev/
etc/
git-bash.exe*
git-cmd.exe*
LICENSE.txt
mingw64/
ReleaseNotes.html
tmp/
unins000.dat
unins000.exe*
unins000.msg
usr/

images

常用命令:

常用命令:
git add      添加文件
git rm       删除文件
git status   查看文件变更状态
git commit   提交文件到版本库
git  push    推送到远程仓库
状态
$ git status
On branch master
Initial commit
Untracked files:
  (use "git add <file>..." to include in what will be committed)
        .classpath
        .project
        .settings/
        bin/
        src/

5.3 推送到github

$ git push –u 相关联
xuebao@DESKTOP-8QV2RMH MINGW64 ~/workspace/git-study (master)
$ git remote add origin https://github.com/zhangxuebao/git-study.git

5.4 查看和远程分支的关系

$ git remote -v
origin  https://github.com/zhangxuebao/git-study.git (fetch)
origin  https://github.com/zhangxuebao/git-study.git (push) 

有需要可以联系微信xuebao19930721和加入微信群
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址