玖叶教程网

前端编程开发入门

git 命令使用技巧(ug整体变形命令怎么使用)

Q1:忽略文件

一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。 通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。 在这种情况下,我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件模式。 来看一个实际的例子:

$ cat .gitignore

*.[oa]

*~

第一行告诉 Git 忽略所有以 .o 或 .a 结尾的文件。一般这类对象文件和存档文件都是编译过程中出现的。 第二行告诉 Git 忽略所有以波浪符(~)结尾的文件,许多文本编辑软件(比如 Emacs)都用这样的文件名保存副本。 此外,你可能还需要忽略 log,tmp 或者 pid 目录,以及自动生成的文档等等。 要养成一开始就设置好 .gitignore 文件的习惯,以免将来误提交这类无用的文件。

文件 .gitignore 的格式规范如下:

  • 所有空行或者以 # 开头的行都会被 Git 忽略。
  • 可以使用标准的 glob 模式匹配。
  • 匹配模式可以以(/)开头防止递归。
  • 匹配模式可以以(/)结尾指定目录。
  • 要忽略指定模式以外的文件或目录,可以在模式前加上惊叹号(!)取反。

所谓的 glob 模式是指 shell 所使用的简化了的正则表达式。 星号(*)匹配零个或多个任意字符;[abc] 匹配任何一个列在方括号中的字符(这个例子要么匹配一个 a,要么匹配一个 b,要么匹配一个 c);问号(?)只匹配一个任意字符;如果在方括号中使用短划线分隔两个字符,表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)。 使用两个星号(*) 表示匹配任意中间目录,比如`a/**/z` 可以匹配 a/z, a/b/z 或 `a/b/c/z`等

Q2:若要查看已暂存的将要添加到下次提交里的内容

git diff --staged

Q3:移除文件

rm readme.txt

git rm readme.txt

git commit -m "ver 1.1"

Q4:重命名

git mv README.md README

其实,运行 git mv 就相当于运行了下面三条命令:

$ mv README.md README

$ git rm README.md

$ git add README

Q5:查看提交历史

git log 会按提交时间列出所有的更新,最近的更新排在最上面

一个常用的选项是 -p,用来显示每次提交的内容差异。 你也可以加上 -2 来仅显示最近两次提交

git log -p -2

简化输出

git log --stat

定制格式:

git log --pretty=format:"%h - %an, %ar : %s"

Q6:撤消操作

git commit --amend (以当前状态,再次提交)

最终你只会有一个提交 - 第二次提交将代替第一次提交的结果

Q7:从远程仓库中抓取与拉取

$ git fetch [remote-name]

这个命令会访问远程仓库,从中拉取所有你还没有的数据。 执行完成后,你将会拥有那个远程仓库中所有分支的引用,可以随时合并或查看

Q8:查看远程仓库

git remote show origin

Q9:标签

git tag

附注标签

git tag -a v1.4 -m 'my version 1.4'

git show v1.4

后期打标签

查看提交历史

git log --pretty=oneline

删除标签

git tag -d v1.4-lw

Q9:同步更新

Q10:#初始化

[root@node140 git]# git init

Initialized empty Git repository in /opt/git/.git/

$ git add *.c

$ git add LICENSE

$ git commit -m 'initial project version'

Q11:#带密码获取版本文件

git clone -b 1.0.2 http://realease:[email protected]:81/idream/platform_products/community_sdk/weplay_game_server_bocai.git

@ 需要转为 %40 字符

Q12:基本使用

#安装git

yum -y install git

linux 机器

cd /opt/hkdata

1.配置环境

git config --global user.name "hk" git config --global user.email "[email protected]"

2.获取目标仓库

git clone git@node139:hk/user.git

进入项目并创建 测试文件

cd user

touch README.md

添加文件

git add README.md

注释

git commit -m "add README"

提交

git push -u origin master

Q13:jdlog Git 初始化

jdlog Git 初始化
#dlog_git_init.sh 
#!/bin/bash
if [ $# -lt 1 ]
then
  echo "Usage: `basename $0` directory"
  exit 1
fi
dir="$1"
mkdir ${dir}
cd ${dir}
git init
git remote remove ${dir}
git remote add -f ${dir} http://realease:[email protected]:81/idream/yanfa/OperationForum/dlog.git
git config core.sparsecheckout true
echo "${dir}" >> .git/info/sparse-checkout
cat .git/info/sparse-checkout
git pull origin master
#tar

Q14:git 提取部分文件夹目录

1)git 地址

http://bkgitlab.pan.cn/ledou00/ldcomm.git

2)目录

3)获取 conf 目录

注意:如果账号密码中带 @ ,需要进行转换成 %40符号

git remote add -f origin http://'[email protected]':'ledou@2019'@bkgitlab.pan.cn/ledou00/ldcomm.git

改成

git remote add -f origin http://shiye.meng%40idream.com:ledou%[email protected]/ledou00/ldcomm.git

4)配置 #开启sparse clone

git config core.sparsecheckout true

5) #设置需要pull的目录,*表示所有,!表示匹配相反的

echo "conf" >> .git/info/sparse-checkout

6)查看

cat .git/info/sparse-checkout

7)拉取

git pull origin master


#GIT只拉取项目中的某个目录

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言