diff --git a/examples/common.h b/examples/common.h
index 204b17595..a1f3ec444 100644
--- a/examples/common.h
+++ b/examples/common.h
@@ -12,10 +12,25 @@
* .
*/
+#include
+#include
#include
#include
#include
#include
+#include
+
+#ifdef _WIN32
+# include
+# include
+# define open _open
+# define read _read
+# define close _close
+# define ssize_t int
+# define sleep(a) Sleep(a * 1000)
+#else
+# include
+#endif
#ifndef PRIuZ
/* Define the printf format specifer to use for size_t output */
diff --git a/examples/for-each-ref.c b/examples/for-each-ref.c
index eea73d2fc..900792c12 100644
--- a/examples/for-each-ref.c
+++ b/examples/for-each-ref.c
@@ -1,5 +1,4 @@
#include
-#include
#include "common.h"
static int show_ref(git_reference *ref, void *data)
diff --git a/examples/general.c b/examples/general.c
index 4bd1dac23..ddc53c3e8 100644
--- a/examples/general.c
+++ b/examples/general.c
@@ -36,6 +36,8 @@
* [pg]: https://git-scm.com/book/en/v2/Git-Internals-Plumbing-and-Porcelain
*/
+#include "common.h"
+
/**
* ### Includes
*
@@ -43,9 +45,7 @@
* that you need. It should be the only thing you need to include in order
* to compile properly and get all the libgit2 API.
*/
-#include
-#include
-#include
+#include "git2.h"
static void oid_parsing(git_oid *out);
static void object_database(git_repository *repo, git_oid *oid);
diff --git a/examples/index-pack.c b/examples/index-pack.c
index 0941e09e7..2181f43f3 100644
--- a/examples/index-pack.c
+++ b/examples/index-pack.c
@@ -1,21 +1,5 @@
#include "common.h"
-#include
-#include
-#include
-#ifdef _WIN32
-# include
-# include
-
-# define open _open
-# define read _read
-# define close _close
-
-#define ssize_t int
-#else
-# include
-#endif
-
/*
* This could be run in the main loop whilst the application waits for
* the indexing to finish in a worker thread
diff --git a/examples/status.c b/examples/status.c
index 38e5120e8..979ab7c97 100644
--- a/examples/status.c
+++ b/examples/status.c
@@ -13,12 +13,6 @@
*/
#include "common.h"
-#ifdef _WIN32
-# include
-# define sleep(a) Sleep(a * 1000)
-#else
-# include
-#endif
/**
* This example demonstrates the use of the libgit2 status APIs,