linux下的项目管理工具make和git的使用

在linux下我们不能向在windows下这样去快速的进行编译,在以前我们都是使用一个命令一个命令地去将.c文件生成程序,在这里我们介绍项目自动化辅助构建工具make以及项目版本管理工具git**

make

**
make说白了就是一个解释器,他是和Makefile相配合使用的,我们介绍一下Makefile,。
Makefile是一个普通文件,内部可以定义自己的项目整体编译规则。make就是在当前目录下寻找到Makefile文件,并对Makefile中记录的规则逐行的进行解释,执行完成项目的自动化构建。

  • Makefile编写规则:
    目标对象:依赖对象
    [tab]需要执行的命令
    这里的[tab]是必须要使用的,如果不写就会让这行代码失效

  • make执行规则
    1.到makefile中找寻目标对象,然后为了生成目标对象执行要执行的命令。
    规则:
    a.找寻目标对象的时候需要判断目标对象是不是已经存在了。如果已经存在并且目标对象的时间戳 > 依赖对象的时间戳(这里是比较最后一次修改时间),这时候我们知道依赖对象并没有改动,并且目标对象 在执行后生成新的也是不会改变的,此时我们需要编译。反之需要重新编译
    b.没有没有找到目标对象就直接进行编译命令,生成目标对象
    c.到宜兰对象中找寻目标,判断依赖对象是不是已经存在,如果存在,就判断依赖对象最后一次修改时间判断目标对象是否需要重新建立,如果没有存在就需要继续在Makefile中去寻找。

预定义变量
在Make file中我们可以自己定义变量

  • $@:目标对象
  • $^:所有的以来对象
  • $<:依赖对象的第一个

此时我们可以声明一些预定义变量去简化我们Makefile文件中的内容
例如:

bin=./main
obj=child.o ./main.o
$(bin):$(obj)
	gcc  $^ -o $@
%.o:%.c
	gcc -c &< -o $@

我们定义了bin和obj的变量,在使用的时候我们就只需要使用$(变量)就可以了,此时我们make之后我们就会执行一下的命令
gcc -c child.c -o child.o
gcc -c main.c -o main.o
gcc child.o main.o -o main
这三条命令
这里的%是一个通配符,匹配所有的字符

声明伪对象
.PHONY 声明伪对象,不管目标对象是否存在,不管目标对象是否最新每次都是重新执行构建规则。其含义就是我们无论无何我们都需要将指定的规则执行完

git

git是一个项目管理工具,常见的项目管理工具有集中式项目管理工具svn和分布式项目管理工具git.
这里我们介绍git的三板斧:

  • 克隆路径:git clone url
  • 增加文件:git add filename
  • 提交:git commit -m “日志”
  • 推送:git push origin master(这里的master是主分支,我们也可以在主分支上建立一个副分支对我们的代码进行管理)

猜你喜欢

转载自blog.csdn.net/boke_fengwei/article/details/88724012