diff --git a/.travis.yml b/.travis.yml
index 834337b..868ffaf 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,3 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
 # NOTE(quickstep-team): In Travis-CI, jobs timeout if they take more than 50
 # mins or if there is no log output for more than 10 mins. Hence, we use -O0 to
 # speed up compilation in release build. Also, jobs can only use upto 20GB of
diff --git a/DEV_README.md b/DEV_README.md
index 04d5d66..d830c0a 100644
--- a/DEV_README.md
+++ b/DEV_README.md
@@ -92,7 +92,7 @@
 
 ## Licensing
 
-Quickstep is licensed under the Apache License, Version 2.0. See [LICENSE](https://github.com/pivotalsoftware/quickstep/blob/master/LICENSE) for the full license text.
+Quickstep is licensed under the Apache License, Version 2.0. See [LICENSE](https://github.com/apache/incubator-quickstep/blob/master/LICENSE) for the full license text.
 
 ## Disclaimer
 Apache Quickstep is an effort undergoing incubation at the Apache Software
diff --git a/HISTORY.md b/HISTORY.md
new file mode 100644
index 0000000..be6f181
--- /dev/null
+++ b/HISTORY.md
@@ -0,0 +1 @@
+* Initial commit
diff --git a/NOTICE b/NOTICE
index 3ead237..303d6cd 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
 Apache Quickstep (incubating)
-Copyright 2016 The Apache Software Foundation.
+Copyright 2017 The Apache Software Foundation.
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
@@ -7,7 +7,7 @@
 Portions Copyright (c) 2011-2015, Quickstep Technologies, LLC.
 Portions Copyright (c) 2015-2016, Pivotal Software, Inc.
 
-[Copyright for third_party/benchmark]
+[Copyright for third_party/src/tmb/benchmark]
 Portions Copyright (c) Arne Beer <arne@twobeer.de>
 Portions Copyright (c) Christopher Seymour <chris.j.seymour@hotmail.com>
 Portions Copyright (c) David Coeurjolly <david.coeurjolly@liris.cnrs.fr>
@@ -24,21 +24,14 @@
 Portions Copyright (c) Shuo Chen <chenshuo@chenshuo.com>
 Portions Copyright (c) Yusuke Suzuki <utatane.tea@gmail.com>
 
-[Copyright for third_party/cpplint]
+[Copyright for third_party/src/cpplint]
 Portions Copyright (c) 2009 Google Inc
 
-[Copyright for third_party/farmhash]
+[Copyright for third_party/src/farmhash]
 Copyright (c) 2014 Google, Inc.
 
-[Copyright for third_party/gflags]
+[Copyright for third_party/src/gflags]
 Copyright (c) 2006, Google Inc.
 
-[Copyright for third_party/glog]
+[Copyright for third_party/src/glog]
 Copyright (c) 2008, Google Inc.
-
-[Copyright for third_party/gpertools]
-Copyright (c) 2005, Google Inc.
-
-[Copyright for third_party/linenoise]
-Copyright (c) 2010-2014, Salvatore Sanfilippo <antirez at gmail dot com>
-Copyright (c) 2010-2013, Pieter Noordhuis <pcnoordhuis at gmail dot com>
diff --git a/README.md b/README.md
index 18b0301..9a40db7 100644
--- a/README.md
+++ b/README.md
@@ -125,7 +125,7 @@
 
 ## Licensing
 
-Quickstep is licensed under the Apache License, Version 2.0. See [LICENSE](https://github.com/pivotalsoftware/quickstep/blob/master/LICENSE) for the full license text.
+Quickstep is licensed under the Apache License, Version 2.0. See [LICENSE](https://github.com/apache/incubator-quickstep/blob/master/LICENSE) for the full license text.
 
 ## Disclaimer
 Apache Quickstep is an effort undergoing incubation at the Apache Software
diff --git a/third_party/download_and_patch_prerequisites.sh b/third_party/download_and_patch_prerequisites.sh
index d5ab48a..b9b3d53 100755
--- a/third_party/download_and_patch_prerequisites.sh
+++ b/third_party/download_and_patch_prerequisites.sh
@@ -1,5 +1,22 @@
 #!/bin/bash
 
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
 # Check if the prerequisite bash programs exist on the system.
 for cmd in curl tar; do
   echo -n "Checking if ${cmd} is present ..."
diff --git a/third_party/reset_third_party_dir.sh b/third_party/reset_third_party_dir.sh
index a50befc..3c04381 100755
--- a/third_party/reset_third_party_dir.sh
+++ b/third_party/reset_third_party_dir.sh
@@ -1,3 +1,22 @@
+#!/bin/bash
+
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
 THIRD_PARTY_DIR=`pwd`
 if [ "${PWD##*/}" != "third_party" ]; then
   echo "ERROR: This script can be run only from the third party directory"
diff --git a/third_party/src/tmb/README.md b/third_party/src/tmb/README.md
index df1794e..a0fce74 100644
--- a/third_party/src/tmb/README.md
+++ b/third_party/src/tmb/README.md
@@ -2,5 +2,5 @@
 
 Transactional Message Busses (TMB) are a reusable software library for scalable,
 reliable communication both within a process and across a distributed system.
-TMB is part of the Quickstep project (copyright Pivotal Software, Inc.) and is
-distributed under the same license terms.
+TMB is part of the Quickstep project and is distributed under the same license 
+terms.
