赞
踩
中文版:《 精通 Git 》(第2版)
英文版:《 Pro Git 》Second Edition
Windows 上安装 git
一种方法是 git 官方版本下载地址 下载如下安装包:

安装之后会有好几个可执行程序 Git Bash、Git CMD、Git GUI,其中唯一堪大用的仅为 Git Bash,用法和 Ubuntu 的 bash 一模一样

还有一种方法是下载 GitHub for Windows,这是客户端版的 GitHub。目前还没用到。
Ubuntu 上安装 git
很简单的一行命令就搞定:
sudo apt-get install git
git config --list diff.astextplain.textconv=astextplain filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true http.sslbackend=openssl http.sslcainfo=D:/software/Git/mingw64/ssl/certs/ca-bundle.crt core.autocrlf=true core.fscache=true core.symlinks=false pull.rebase=false credential.helper=manager-core credential.https://dev.azure.com.usehttppath=true init.defaultbranch=master filter.lfs.clean=git-lfs clean -- %f filter.lfs.smudge=git-lfs smudge -- %f filter.lfs.process=git-lfs filter-process filter.lfs.required=true user.name=Yachao Jia //提交必备1/2 user.email=123456789@qq.com //提交必备2/2 core.editor=nano //配置默认编辑器 usr.name=Yachao Jia //配置用户名的时候敲错了user,还不知道怎么删除误写的配置 core.repositoryformatversion=0 core.filemode=false core.bare=false core.logallrefupdates=true core.symlinks=false core.ignorecase=true
git config --global core.editor nano //将默认编辑器设置为nano
git config --global user.name "Yachao Jia" //配置提交用户名
git config --global user.email 123456789@qq.com //配置提交邮箱
git config core.editor //查看编辑器
nano
git config user.name //查看用户名
Yachao Jia
git config user.email //查看用户邮箱
123456789@qq.com
①新建一个文件夹,给文件夹起上合适的名字
②进入该文件夹执行如下命令:
git init //有点类似 ROS 初始化工作空间,会在当前目录生成一个 .git 的隐藏文
//件夹,有 .git 文件夹就说明了本工作空间是一个 “git工程” 的文件夹
git clone [URL] //克隆的命令行格式
git clone https://github.com/libgit2/libgit2 //这行笔者这里会报 time out 的错误
git clone https://gitclone.com/github.com/libgit2/libgit2 //解决上一行访问gitHub出 time out 的问题
感谢这位网友分享的解决办法:Wang CVer
git add test.cpp
git add命令接受一个文件或目录的路径名作为参数,注意这里的重点是一个。如果提供的参数是目录,该命令会递归地添加该目录下的所有文件。
git commit
git commit命令后不必须接文件名,不接文件名默认提交整个暂存区(文件已暂存 staged)中的内容,接了文件名则只提交相应的文件。如果嫌一个一个的git add麻烦,也可以使用git commit 的选项参数-a来跳过git add过程:
git commit -a
git commit -a提交的是已暂存、未暂存但已跟踪(只能是“已修改待暂存”的文件了)的文件。未跟踪的文件并不能被提交,必须使用git add file_name来使文件从未跟踪变成已跟踪。文件状态树如下:
《Pro Git 第2版》一书中提到 “Git 有三种状态,你的文件可能处于其中之一” ,这三种状态是限定在下述“已跟踪”的前提下的

使用rm 删除"已跟踪"的文件,会使文件状态变为"已删除待暂存"。
处理“已删除待暂存”的文件与处理“已修改待暂存”的文件完全一样,可以先
git add file_name,然后再git commit。也可以直接git commit -a强制提交修改。因为“删除文件”也是一种修改嘛,所以这种修改也能够且应该被提交。
使用rm 删除"未跟踪"的文件,不会对git工作空间产生影响,因为这个文件全程对git不可见。
使用git rm file_name删除 git 仓库中的文件。
文件状态会变为“已删除待提交”,即直接放进了暂存区。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。