git的使用

1.设置邮箱和name

$ git config --global user.name "John Doe" 

$ git config --global user.email johndoe@example.com

    global设置的配置存放在当前用户目录下的.gitconfig文件下使用ls -a命令可以查看,这个文件对当前用户生效。当不使用参数时候配置会保存在.git/config文件里,对该文件下的项目生效。当使用参数--system时候会在/etc/gitconfig文件生成配置信息。

2.git目录的创建

//网上拉取代码
git clone url
//本地配置(到项目目录下
git init

    git init后当前目录会生成一个隐藏目录.git里面有一些配置。而git clone会拉取远程项目的配置

3.纳入版本控制

    git init新建仓库后实际上版本控制里面没有任何文件,也就是说你现在新建了一个main.cpp但是git并不会帮你上传和检测它的修改。

git add main.cpp //告诉 Git 开始对这些文件进行跟踪,然后提交

  git clone克隆某个仓库时,工作目录中的所有文件都属于已跟踪文件,不需要你动手。

4.检测当前文件状态

git status //这个命令会列出文件的状态列出文件的状态。包括的信息为 (当前分支)(未被追踪,修改未暂存,修改未提交的所有文件)
//修改未暂存的文件要用git add添加,才能添加到暂存
//只要修改了文件 就要使用git add添加文件

5.设置忽略文件

//某些文件不需要让git追踪,就可以创建一个.gitignore文件进行文件忽略。(.gitignore就是文件名字)
//该文件下的所有文件都会被git忽略,当然也可以使用正则表达式
//比如
*.cpp
main.py
//这个文件忽略了所有cpp结尾的文件和main.py文件
//你只需要创建编辑文件到你想忽略的文件目录下就行,不需要其他操作

6.查看修改细节

git diff
//这个命令会展示未暂存的修改,精确到哪个文件修改了哪一行
//通俗一点就是你修改了文件,但是没有用git add添加的文件

git diff --cached
//这个可以展示暂存和上次提交的文件差异,也是精确到行
//通俗一点就是你使用了git add提交过的修改文件,和你上一次提交(git commit命令)文件的差异

7.提交更新

git commit
//单单使用这个命令会启动一个文本编辑器,里面会有描述文件变动的文本。
//通过-v参数可以在文本中显示每一行的差异
//一般最开头都有一个空行 你需要在这里写你的提交说明


git commit -m "我更新了代码"
//通过这个命令可以跳过打开文本编辑器的过程


git commit -am "我更新了代码,并且不想使用git add去添加我的更新到暂存"
//通过这个命令可以绕过添加暂存的步骤

8.删除文件

//如果自己手工删除了一个文件比如 main.py。并且这个文件已经加入git 追踪了
//那么就需要运行
git rm main.py//来删除追踪
//如果已经修改过并且加入了缓存 那么还得加一个参数
git rm -f main,py


//如果不是代码丢失而是想删除追踪的话 前面的.gitignore文件是最佳的解决方案


//如果我不小心把配置文件加入了暂存中,但是想在不删除配置文件的情况下移除追踪和在暂存区域删除。之后可以添加带.gitignore文件里
git rm --cached "文件名字"


9.查看更新日志

git log
//可以查看更新日志,时间越近越靠前

git log -p -2
//这个命令可以查看每次提交的更新细节(精确到行),-2表示只展示最近两次

git log -p --word-diff
//精确到单词的差异对比

git log --pretty=oneline
//提交显示在一行 还有其他--pretty=short,--pretty=full和--pretty=fuller

git log --pretty=format:"%h - %an, %ar : %s"
//可以定义输出格式

10.提交撤销操作

git commit --amend
//想要撤消刚才的提交操作,可以使用 --amend 选项重新提交

//比如 a.txt忘了
git commit -m 'initial commit'
git add a.txt
git commit -m "刚刚我交错了" --amend
//这样就可以了

//比如你只是单纯的想改提交数据
git commit -m 'initial commit'
git commit -m "刚刚我交错了" --amend

11.暂存撤销操作

//a.txt不小心添加到暂存里了 撤销数据
git reset HEAD a.txt

12.远程拉码

git fetch [仓库名字]
//这个命令会从远程仓库中拉取本地仓库没有的数据,这个会拉取所有分支

git push [仓库名字][分支名字]
//提交数据

13.标签

git tag
//展示所有标签
//其他不想看了

14.分支

//分支的概念懒得打= =
//下面来看操作
git branch testing
//创建一个testing分支
git checkout testing
//切换到testing分支
git branch -d testing
//删除分支
//切换到要合并的分支,然后合并被合并的分支
git merge testing
//合并有冲突要手动解决
git branch
//查看所有的分支 带*的是当前所在的分支
git branch --merged
//查看当前分支合并的分支,其实完成之后应该删掉被合并分支的
git checkout -b testing
//创建和切换分支


git rebase master
//变基 具体懒得打 主要是为了让历史记录更加简单
//千万不要用在公共仓库

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值