git 简单教程更新

时间:2023-03-09 01:52:07
git 简单教程更新

0.初始化

$ git config --global user.name "xxx"
$ git config --global user.email "xxx@gmail.com"
$ ssh-keygen -t rsa -C “xxx@gmail.com”

按3个回车,密码为空。

最后得到了两个文件:id_rsa和id_rsa.pub

把pub文件粘到你的git里

0.1 本地初始化代码仓库

假设我的代码目录在D:\0-LBS-workspace\Quant,里面有不少文件。

启动git shell,到D:\0-LBS-workspace\Quant目录里,执行git int

到code京东创建自己的代码库 git@code.jd.com:username/测试先从本地创建推送上来.git

git remote add origin git@code.jd.com:username/测试先从本地创建推送上来.git

回到自己的电脑

git pull origin master

添加几个文件 git add file.py

git commit -m '第一次提交'

git push origin master

编辑一下 file.py

git add file.py

git commit -m 'modify'

git push origin master

把修改的也推送上去

0.2 克隆线上代码到本地

git clone git@code.jd.com:kayv/网络创建在拉到本地.git

会在当前目录下创建 “网络创建在拉本地”

创建个文件随便写点什么

git add teat.txt

git commit -m 'dd'

git push origin master

OK

gitignore 生效

git rm -r --cached .
git add .
git commit -m ".gitignore is now working"
  • 附常用命令

    HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭 git reset --hard commit_id 或git reset --hard HEAD(HEAD^等等)

  • 配置使用git仓库的人员姓名

    git config --global user.name "Your Name Comes Here"

  • 配置使用git仓库的人员email

    git config --global user.email you@yourdomain.example.com

  • 配置到缓存 默认15分钟

    git config --global credential.helper cache

  • 修改缓存时间

    git config --global credential.helper 'cache --timeout=3600'

    git config --global color.ui true

    git config --global alias.co checkout

    git config --global alias.ci commit

    git config --global alias.st status

    git config --global alias.br branch

    git config --global core.editor "mate -w" # 设置Editor使用textmate

    git config -1 #列举所有配置

  • 用户的git配置文件~/.gitconfig

git help # 显示command的help

git show # 显示某次提交的内容

git show $id

git co -- # 抛弃工作区修改

git co . # 抛弃工作区修改

git add # 将工作文件修改提交到本地暂存区

git add . # 将所有修改过的工作文件提交暂存区

git rm # 从版本库中删除文件

git rm --cached # 从版本库中删除文件,但不删除文件

git reset # 从暂存区恢复到工作文件

git reset -- . # 从暂存区恢复到工作文件

git reset --hard # 恢复最近一次提交过的状态,即放弃上次提交后的所有本次修改

git ci

git ci .

git ci -a # 将git add, git rm和git ci等操作都合并在一起做

git ci -am "some comments"

git ci --amend # 修改最后一次提交记录

git revert <$id> # 恢复某次提交的状态,恢复动作本身也创建了一次提交对象

git revert HEAD # 恢复最后一次提交的状态

git log

git log # 查看该文件每次提交记录

git log -p # 查看每次详细修改内容的diff

git log -p -2 # 查看最近两次详细修改内容的diff

git log --stat #查看提交统计信息

  • 初始化一个版本仓库

    git init

  • Clone远程版本库

    git clone git@xbc.me:wordpress.git

  • 添加远程版本库origin,语法为 git remote add [shortname] [url]

    git remote add origin git@xbc.me:wordpress.git

  • 查看远程仓库

    git remote -v

  • 添加当前修改的文件到暂存区

    git add .

  • 如果你自动追踪文件,包括你已经手动删除的,状态为Deleted的文件

    git add -u

  • 提交你的修改

    git commit –m "你的注释"

  • 推送你的更新到远程服务器,语法为 git push [远程名] [本地分支]:[远程分支]

    git push origin master

  • 查看文件状态

    git status

  • 跟踪新文件

    git add readme.txt

  • 从当前跟踪列表移除文件,并完全删除

    git rm readme.txt

  • 仅在暂存区删除,保留文件在当前目录,不再跟踪

    git rm –cached readme.txt

  • 重命名文件

    git mv reademe.txt readme

  • 查看提交的历史记录

    git log

  • 修改最后一次提交注释的,利用–amend参数

    git commit --amend

  • 忘记提交某些修改,下面的三条命令只会得到一个提交。

    git commit –m "add readme.txt"

    git add readme_forgotten

    git commit –amend

  • 假设你已经使用git add .,将修改过的文件a、b加到暂存区

  • 现在你只想提交a文件,不想提交b文件,应该这样

    git reset HEAD b

  • 取消对文件的修改

    git checkout –- readme.txt

    git add -A stages All

    git add . stages new and modified, without deleted

    git add -u stages modified and deleted, without new